抽取的结果不会重复,直接上全部代码 拿走可以直接用
抽取的结果不会重复,直接上全部代码 拿走可以直接用
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="jquery.min.js"></script>
<script>
//奖池数据
var wait_term = new Array();
wait_term.push("一等奖");
wait_term.push("二等奖");
wait_term.push("三等奖");
wait_term.push("四等奖");
wait_term.push("五等奖");
wait_term.push("六等奖");
wait_term.push("谢谢惠顾");
//获取minNum到maxNum的随机数
function randomNum(minNum, maxNum) {
return parseInt(Math.random() * (maxNum - minNum + 1) + minNum, 10);
}
//获取随机的结果
function getWaitTermName(){
var waitTermLength = wait_term.length;
var currentWaitTermLengthNo = randomNum(1, waitTermLength);
return wait_term[currentWaitTermLengthNo-1];//数组下标-1
}
var resultName = new Array();
var _flag = false;
$(function(){
$("#start").click(function(){
//抽取次数等于奖池长度时 抽取结束
if(resultName.length == wait_term.length){
alert("所有奖项抽取完毕!");
return;
}
//防止连续点击
if(_flag){
return;
}
startRandom()
});
});
function startRandom(){
_flag = true;
var result_name = "";
//设置每次抽取结果不会重复
if(resultName.length == 0){
result_name = getWaitTermName();
resultName.push(result_name);
}else{
var flag = false;
while(!flag){
result_name = getWaitTermName();
var str = 0;
for(var i=0;i<resultName.length;i++){
if(result_name == resultName[i]){
str = 1;
}
}
if(str == 0){
flag = true;
resultName.push(result_name);
}
}
}
var strs = "<li>"+result_name+"</li>";
$("#result_text").append(strs);
_flag = false;
}
</script>
</head>
<body style="background-color:#eee;">
<div style="width:500px;height:800px;margin:0px auto;border:1px solid #777;padding:20px;">
<div style="width:100px;margin:0 auto;"><button id="start">开始抽取</button></div>
<div>
<p>抽取结果:</p>
<ul id="result_text">
</ul>
</div>
</div>
</body>
</html>