抽奖不重复问题。

x19880830 2011-05-20 02:50:09
<script language="JavaScript" type="text/javascript">
//

var alldata //抽奖数据,以逗号分隔
var alldataarr
var num
var randnum;
var timer
var num

function change(){
document.getElementById('oknum').value = alldataarr[GetRnd(0,num)];
}

function start1(){
alldata =document.getElementById("hideValue").value;
alldataarr = alldata.split(",");
num = alldataarr.length-1;

//setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数
clearInterval(timer);
timer = setInterval('change()',1); //随机数据变换速度,越小变换的越快
}

function ok1(){
//noDupNum();

//clearInterval() 方法可取消由 setInterval() 设置的 timeout。
//clearInterval() 方法的参数必须是由 setInterval() 返回的 ID 值。
clearInterval(timer);
return true;
}

function GetRnd(min,max){
randnum = parseInt(Math.random()*(max-min+1));
return randnum;
}

function noDupNum(){
// to remove the selected mobile phone number
alldataarr.removeEleAt(randnum);

// to reorganize the mobile number array!!
var o = 0;
for(p=0; p<alldataarr.length;p++){
if(typeof alldataarr[p]!="undefined"){
alldataarr[o] = alldataarr[p];
o++;
}
}
num = alldataarr.length-1;
}
// method to remove the element in the array
Array.prototype.removeEleAt = function(dx)
{
if(isNaN(dx)||dx>this.length){return false;}
this.splice(dx,1);
}
</script>


这段JS,是网上找的抽奖代码,,hideValue 这个是从数据库获取到的身份证字段,靠这个字段来抽奖,,请问下,怎么能让抽奖出来的内容,不重复,,抽出来依次就不能抽出来了,,大家帮帮忙,,有代码最好。。
...全文
168 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ivenlove 2011-05-20
  • 打赏
  • 举报
回复
以上正解,不想用数据库可以用js数组,但也要逐一作对比。
一段 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yue547283947 的回复:]

每次抽取的时候 结果保存在数据库 每次抽的时候判断是否存在 如果存在 再次随机产生



抽取的结果放在arrylist里面 循环判断也行
[/Quote]
+1 Js 的话可以用Ajax+WebService把数据保存在数据库,或者用缓存也可以
yue547283947 2011-05-20
  • 打赏
  • 举报
回复
每次抽取的时候 结果保存在数据库 每次抽的时候判断是否存在 如果存在 再次随机产生



抽取的结果放在arrylist里面 循环判断也行

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧