JavaScript实现4位随机验证码的生成


Posted in Javascript onJanuary 28, 2021

本文实例为大家分享了JavaScript生成4位随机验证码的具体代码,供大家参考,具体内容如下

代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>4位随机验证码的生成</title>
<style>
 label{
 color:aqua;
 float:left;
 font-size: 20px;
 line-height:2em;
 }
 #tex{
 display:inline-block;
 width:50px;
 height: 25px;
 float:left;
 text-align: center;
 font-size:15px;
 margin-top:10px;
 }
 #showyz{
 border:3px solid green;
 color:blue;
 width:90px;
 height:40px;
 text-align:center;
 float:left;
 margin-left:15px;
 line-height: 2.5em;
 
 }
 #hyz{
 background-color:burlywood;
 border:1px solid burlywood;
 width:50px;
 height:20px;
 float: left;
 margin-left:20px;
 margin-top: 10px;
 margin-right:15px;
 }
 #btn{
 
 }
</style>
</head>
<body>
<label for="tex">请输入验证码:</label><input type="text" id="tex" maxlength="4" autofocus>
<div id="showyz"></div>
<div id="hyz">换一张</div><br>
<input type="button" id="btn" value="确认">
</body>
<script>
//定义个空数组保存62个编码
var codes=[];
//将数字对应的编码保存到codes数组中,数字编码范围【48-57】
for(var i=48;i<=57;i++){
 codes.push(i);
}
//将大写字母对应的编码保存到codes数组中,对应编码范围【65-90】
for(var i=65;i<=90;i++){
 codes.push(i);
}
//将小写字母对应的编码保存到codes数组中,对应编码范围【97-122】
for(var i=97;i<=122;i++){
 codes.push(i);
}
//定义个方法生成62位随机数作为数组角标返回随机的编码,再将其编码转化为对应数字或者字母
function suiji(){
var arr=[];//定义个数组保存4位随机数
 for(var i=0;i<4;i++){
 var index=Math.floor(Math.random()*(61-0+1)+0);//生成个随机数
 var char=String.fromCharCode(codes[index]);//解码
 arr.push(char); //存入到数组arr中
}
 return arr.join("");//将数组转为字符串,以空格分隔,并返回
}
var yzm=suiji();//调用方法,将放回的验证码返回到yzm中
//获取上述元素
var tex=document.getElementById("tex");
var showyz=document.getElementById("showyz");
var hyz=document.getElementById("hyz");
var btn=document.getElementById("btn");
//将验证码写入到id为showyz的div中
showyz.innerHTML=yzm;
//实现换一张验证码功能
hyz.οnclick=function(){
 yzm=suiji();
 showyz.innerHTML=yzm;
}
//将自己输入的验证码与获取的随机验证码验证
btn.οnclick=function(){
 var textvalue=tex.value;//获取输入的值
 if(textvalue.toLowerCase()==yzm.toLowerCase()){//将值都转为小写比较
 alert("验证码输入正确!");
 yzm=suiji();
  showyz.innerHTML=yzm;
 tex.value="";
 }
 else{
 alert("验证码输入错误,请重新输入!");
 yzm=suiji();
  showyz.innerHTML=yzm;
 tex.value="";
 }
}
</script>
</html>

JavaScript实现4位随机验证码的生成

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

Javascript 相关文章推荐
jQuery 研究心得 取得属性的值
Nov 30 Javascript
javascript控制Div层透明属性由浅变深由深变浅逐渐显示
Nov 12 Javascript
jQuery制作简洁的多级联动Select下拉框
Dec 23 Javascript
在JavaScript中使用开平方根的sqrt()方法
Jun 15 Javascript
angularjs自定义ng-model标签的属性
Jan 21 Javascript
javascript html5实现表单验证
Mar 01 Javascript
关于iframe跨域POST提交的方法示例
Jan 15 Javascript
基于vue中css预加载使用sass的配置方式详解
Mar 13 Javascript
javascript实现小型区块链功能
Apr 03 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
Nov 13 Javascript
vue 组件销毁并重置的实现
Jan 13 Javascript
解决vue项目运行npm run serve报错的问题
Oct 26 Javascript
JavaScript点击按钮生成4位随机验证码
Jan 28 #Javascript
Vue ​v-model相关知识总结
Jan 28 #Vue.js
Vue 数据响应式相关总结
Jan 28 #Vue.js
node使用async_hooks模块进行请求追踪
Jan 28 #Javascript
JavaScript如何实现防止重复的网络请求的示例
Jan 28 #Javascript
JavaScript实现跟随鼠标移动的盒子
Jan 28 #Javascript
vue.js实现点击图标放大离开时缩小的代码
Jan 27 #Vue.js
You might like
关于PHP中的Class的几点个人看法
2006/10/09 PHP
如何用C语言编写PHP扩展的详解
2013/06/13 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
js 数组的for循环到底应该怎么写?
2010/05/31 Javascript
Function.prototype.bind用法示例
2013/09/16 Javascript
简单漂亮的js弹窗可自由拖拽且兼容大部分浏览器
2013/10/22 Javascript
jQuery性能优化技巧分析
2015/02/20 Javascript
JavaScript动态设置div的样式的方法
2015/12/26 Javascript
AngularJs  Using $location详解及示例代码
2016/09/02 Javascript
概述BootStrap中role=&quot;form&quot;及role作用角色
2016/12/08 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
JS添加或删除HTML dom元素的方法实例分析
2019/03/05 Javascript
OpenLayers3加载常用控件使用方法详解
2020/09/25 Javascript
[02:00]最后,我终于出了辉耀
2018/03/27 DOTA
举例讲解Python面向对象编程中类的继承
2016/06/17 Python
python logging日志模块的详解
2017/10/29 Python
python实现求解列表中元素的排列和组合问题
2018/03/15 Python
Python3编码问题 Unicode utf-8 bytes互转方法
2018/10/26 Python
Python小工具之消耗系统指定大小内存的方法
2018/12/03 Python
对python内置map和six.moves.map的区别详解
2018/12/19 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
python中对数据进行各种排序的方法
2019/07/02 Python
Python使用type关键字创建类步骤详解
2019/07/23 Python
使用Python实现分别输出每个数组
2019/12/06 Python
解决Keras 中加入lambda层无法正常载入模型问题
2020/06/16 Python
大学军训通讯稿
2014/01/13 职场文书
中秋节礼品促销方案
2014/02/02 职场文书
妈妈的账单教学反思
2014/02/06 职场文书
党员承诺践诺书
2014/05/20 职场文书
运动会方阵口号
2014/06/07 职场文书
初中学生操行评语
2014/12/26 职场文书
Mysql systemctl start mysqld报错的问题解决
2021/06/03 MySQL
Java 超详细讲解IO操作字节流与字符流
2022/03/25 Java/Android