js实现网页随机验证码


Posted in Javascript onOctober 19, 2020

本文实例为大家分享了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>

刷新前随机码

js实现网页随机验证码

刷新后的随机码

js实现网页随机验证码

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="">
你喜欢的明星有?<input type="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>

效果图如下(可以将每一个按钮都试一下呦)

js实现网页随机验证码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
Jan 15 Javascript
js猜数字小游戏的简单实现代码
Jul 02 Javascript
javascript操作数组详解
Dec 17 Javascript
Javascript优化技巧之短路表达式详细介绍
Mar 27 Javascript
javascript与jquery动态创建html元素示例
Jul 25 Javascript
JS基于递归实现倒计时效果的方法
Nov 26 Javascript
AngularJS 在同一个界面启动多个ng-app应用模块详解
Dec 20 Javascript
微信小程序 使用腾讯地图SDK详解及实现步骤
Feb 28 Javascript
JavaScript对象属性操作实例解析
Feb 04 Javascript
vue计算属性+vue中class与style绑定(推荐)
Mar 30 Javascript
JSON获取属性值方法代码实例
Jun 30 Javascript
vue自定义右键菜单之全局实现
Apr 09 Vue.js
JS实现4位随机验证码
Oct 19 #Javascript
如何编写一个 Webpack Loader的实现
Oct 18 #Javascript
JavaScript中EventBus实现对象之间通信
Oct 18 #Javascript
vuex刷新后数据丢失的解决方法
Oct 18 #Javascript
JavaScript大数相加相乘的实现方法实例
Oct 18 #Javascript
vue任意关系组件通信与跨组件监听状态vue-communication
Oct 18 #Javascript
vscode+gulp轻松开发小程序的完整步骤
Oct 18 #Javascript
You might like
关于手调机和数调机的选择
2021/03/02 无线电
PHP页面中文乱码分析
2013/10/29 PHP
php数组和链表的区别总结
2019/09/20 PHP
PHP执行普通shell命令流程解析
2020/08/24 PHP
javascript 定义新对象方法
2010/02/20 Javascript
node.js中的fs.rmdir方法使用说明
2014/12/16 Javascript
AngularJs学习第八篇 过滤器filter创建
2016/06/08 Javascript
js中class的点击事件没有效果的解决方法
2016/10/13 Javascript
jQuery ajaxForm()的应用
2016/10/14 Javascript
实例详解JavaScript中setTimeout函数的执行顺序
2017/07/12 Javascript
基于JS代码实现简单易用的倒计时 x 天 x 时 x 分 x 秒效果
2017/07/13 Javascript
详解webpack3如何正确引用并使用jQuery库
2017/08/26 jQuery
mpvue构建小程序的方法(步骤+地址)
2018/05/22 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
微信小程序购物车、父子组件传值及calc的注意事项总结
2018/11/14 Javascript
6种JavaScript继承方式及优缺点(小结)
2020/02/06 Javascript
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
Python爬虫基础之XPath语法与lxml库的用法详解
2018/09/13 Python
python实现简单名片管理系统
2018/11/30 Python
pyshp创建shp点文件的方法
2018/12/31 Python
详解Django中views数据查询使用locals()函数进行优化
2020/08/24 Python
如何使用Python调整图像大小
2020/09/26 Python
Html5 web本地存储实例详解
2016/07/28 HTML / CSS
使用phonegap创建联系人的实现方法
2017/03/30 HTML / CSS
纽约香氛品牌:NEST Fragrance
2018/10/15 全球购物
将时尚融入珠宝:Adornmonde
2019/10/17 全球购物
一份全面的PHP面试问题考卷
2012/07/15 面试题
怎样写好自我鉴定
2013/12/04 职场文书
触摸春天教学反思
2014/02/03 职场文书
初中班主任评语
2014/04/24 职场文书
2015年世界环境日演讲稿
2015/03/18 职场文书
2015年党务公开工作总结
2015/05/19 职场文书
低端且暴利的线上线下创业项目分享
2019/09/03 职场文书
Python绘制地图神器folium的新人入门指南
2021/05/23 Python
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS
Python干货实战之八音符酱小游戏全过程详解
2021/10/24 Python