首页 网站特效 PHP/Mysql 网站模板 视频教程 整站源码 云服务器 免责声明

素材码 > 抽奖 > jQuery基于json动态随机获取中奖名单抽奖代码

jQuery基于json动态随机获取中奖名单抽奖代码

更新时间:2019-06-01 码币:1
357058607
jQuery基于json动态随机获取中奖名单抽奖代码 应用简介

jQuery基于json动态随机获取中奖名单抽奖代码,可以随机批量抽出多个中奖用户名单。

js代码

<script type="text/javascript"
//从一个给定的数组arr中,随机返回num个不重复项 
        function getArrayItems(arr, num) { 
            //新建一个数组,将传入的数组复制过来,用于运算,而不要直接操作传入的数组; 
            var temp_array = new Array(); 
            for (var index in arr) { 
                temp_array.push(arr[index]); 
            } 
            //取出的数值项,保存在此数组 
            var return_array = new Array(); 
            for (var i = 0; i<num; i++) { 
                //判断如果数组还有可以取出的元素,以防下标越界 
                if (temp_array.length>0{ 
                    //在数组中产生一个随机索引 
                    var arrIndex = Math.floor(Math.random()*temp_array.length); 
                    //将此随机索引的对应的数组元素值复制出来 
                    return_array[i] = temp_array[arrIndex]; 
                    //然后删掉此索引的数组元素,这时候temp_array变为新的数组 
                    temp_array.splice(arrIndex, 1); 
                } else { 
                    //数组中数据项取完后,退出循环,比如数组本来只有10项,但要求取出20项. 
                    break
                } 
            } 
            return return_array; 
        } 
    var interval; 
    $(".submit").click(function(){ 
        var status = $(this).data("id"); 
        var ints ; 
        if(status == 0){ 
            $.get("data.json",{},function(data){ 
                if(data){ 
                      if(data.code=="1"){ 
                        function times(){ 
                            var ArrList=data.data; 
                            var res = getArrayItems(ArrList,20); 
                            str=''
                            for(o in res){ 
                                num = parseInt(o)+1
                                str+='<li data-id="'+res[o].id+'">'+num+'、<span>'+res[o].name+'</span><label>'+res[o].tel+'</label></li>'
                            } 
                            $(".prizeList").html(str); 
                        } 
                        interval = setInterval(times,0); 
                        $(".submit").data("id","1"); 
                        $(".submit").text("停止"); 
                    } 
                }else{   
                    alert('Ajax error!'); 
                } 
            },'json'); 
        }else{ 
            clearInterval(interval); 
            $(".submit").data("id","0"); 
            $(".submit").text("开始"); 
        } 
    }
 
</script>


  • 收藏
  • 投诉
评论列表