本文实例为大家分享了js实现网页随机验证码的具体代码,供大家参考,具体内容如下
1、现在全选网站为了防止用户利用机器人自动注册、登录、灌水,采用了验证码技术。所谓验证码,就是系统将一串随机产生的数字或符号,生成一幅图片,图片里加入一些千扰象素(防止OCR)的验证信息。这验证码信息由用户肉眼识别后,将其输入到表单中并提交网站验证,只有验证成功后用户才能使用系统提供的某项功能。
随机产生一个由n位数字和字母组成的验证码(本例题为4位),单击[刷新]按钮,重新产生验证码。
代码如下:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>随机验证码练习</title> <script type="text/javascript"> var s="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";//验证码中可能包含的字符 function creat(n){ var b="";//保存生成的验证码,验证码是一个字符串类型 for(var i=0;i<n;i++) { var index=Math.floor(Math.random()*62)//随机产生0-62个之间随机数 b=b+s.charAt(index);//将随机产生的数字当做字符串的下标,然后用charAt函数将它取出来然后放入b中 } return b;//返回随机产生的验证码 } function show() { document.getElementById("yzm").innerHTML=creat(4); }; window.onload=show; </script> </head> <body> <span id="yzm"></span> <input type="button" value="刷新" onClick="show()"> </body> </html>
刷新前随机码
刷新后的随机码
2.全选事件
<!doctype html> <html> <head> <meta charset="utf-8"> <title>全选练习</title> <script type="text/javascript"> window.onload=function() { //将四个多选框,以及全选/全不选设置为全局变量 var it=document.getElementsByName("ites"); var q=document.getElementById("checkallbox"); //全选按钮(点击按钮以后四个多选框全都被选中) //第一步选中事件 var all=document.getElementById("checkall"); //第二步绑定事件 all.onclick=function() { //第三步书写事件驱动程序(设置四个多选框为选中状态) //遍历四个多选框 for(var i=0;i<it.length;i++) { it[i].checked=true;//通过checked的属性来设置是否被选中(true选中,false不选) } q.checked=true;//全选后将全选/全不选设置为true }; //全不选按钮(点击按钮以后四个多选框全不被选中) //第一步选中事件 var no=document.getElementById("checkno"); //第二步绑定事件 no.onclick=function() { //遍历四个多选框 for(var i=0;i<it.length;i++) { it[i].checked=false;//通过checked的属性来设置是否被选中(true选中,false不选) } q.checked=false;//全不选后将全选/全不选设置为false }; //反选 //第一步选中事件 var fx=document.getElementById("checkreverse"); //第二步绑定事件 fx.onclick=function() { q.checked=true;//默认是全选/全不选是选中状态 //遍历四个多选框 for(var i=0;i<it.length;i++) { if(it[i].checked) it[i].checked=false;//如果是选中状态则改成不选中 else it[i].checked=true; //否则相反(也可以if-else改写成it[i].checked=!it[i].checked) //判断四个多选框是否是全选,只要一个没选中就不是全选 if(it[i].checked==false) { q.checked=false; } } }; //提交 var tj=document.getElementById("checksend"); tj.onclick=function() { for(var i=0;i<it.length;i++) { if(it[i].checked) alert(it[i].value); } }; q.onclick=function() { for(var i=0;i<it.length;i++) { it[i].checked=q.checked; } }; //如果四个多选框全都被选中,则全选/全不选按钮也应该选中 //如果四个多选框全都没被选中,则全选/全不选按钮也应该不选中 //为四个多选框分别绑定点击响应事件 //遍历四个多选框 for(var i=0;i<it.length;i++) { //为四个多选框绑定点击事件 it[i].onclick=function() { q.checked=true;//初始默认状态为选中状态 for(var j=0;j<it.length;j++) //判断四个多选框是否是全选,只要一个没选中就不是全选 if(it[j].checked==false) { q.checked=false; break;//一旦为假就退出 } }; } }; </script> </head> <body> <form method="post" action=""> 你喜欢的明星有"checkbox" id="checkallbox">全选/全不选 <br/> <input type="checkbox" name="ites" value="赵丽颖">赵丽颖 <input type="checkbox" name="ites" value="杨幂">杨幂 <input type="checkbox" name="ites" value="杨洋">杨洋 <input type="checkbox" name="ites" value="易烊千玺">易烊千玺 <br/> <input type="button" value="全选" id="checkall"> <input type="button" value="全不选" id="checkno"> <input type="button" value="反选" id="checkreverse"> <input type="button" value="提交" id="checksend"> </form> </body> </html>
效果图如下(可以将每一个按钮都试一下呦)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
风云阁资源网 Design By www.bgabc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
风云阁资源网 Design By www.bgabc.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】