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

 更新时间:2021年01月28日 10:48:03   作者:weixin_42026831  
这篇文章主要为大家详细介绍了JavaScript实现4位随机验证码的生成,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

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

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

相关文章

  • js+html5生成自动排列对话框实例

    js+html5生成自动排列对话框实例

    这篇文章主要介绍了js+html5生成自动排列对话框实例,弹出多个对话框,可以自动排列,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • JS数组降维的几种方法详解

    JS数组降维的几种方法详解

    这篇文章主要介绍了JS数组降维的几种方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • 常见JS验证脚本汇总

    常见JS验证脚本汇总

    这篇文章主要介绍了常见JS验证脚本,结合实例形式汇总分析了JavaScript用于验证的系统自带函数与自定义函数,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-12-12
  • 详解JS中统计函数执行次数与执行时间

    详解JS中统计函数执行次数与执行时间

    这篇文章给大家分享了JS中统计函数执行次数与执行时间的相关知识点内容,有兴趣的朋友们分享下。
    2018-09-09
  • webpack与SPA实践之管理CSS等资源的方法

    webpack与SPA实践之管理CSS等资源的方法

    本篇文章主要介绍了webpack与SPA实践之管理CSS等资源的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • BootStrap中Table分页插件使用详解

    BootStrap中Table分页插件使用详解

    bootstrap-table 是一个轻量级的table插件,使用AJAX获取JSON格式的数据,其分页和数据填充很方便,支持国际化。这篇文章介绍了bootstrap中table分页插件的使用,感兴趣的朋友一起看看吧
    2016-10-10
  • js使用xml数据载体实现城市省份二级联动效果

    js使用xml数据载体实现城市省份二级联动效果

    这篇文章主要为大家详细介绍了js使用xml数据载体实现城市省份二级联动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • 在layui tab控件中载入外部html页面的方法

    在layui tab控件中载入外部html页面的方法

    今天小编就为大家分享一篇在layui tab控件中载入外部html页面的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • js实现简单掷骰子小游戏

    js实现简单掷骰子小游戏

    这篇文章主要为大家详细介绍了js实现简单摇筛子小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • js遍历添加栏目类添加css 再点击其它删除css【推荐】

    js遍历添加栏目类添加css 再点击其它删除css【推荐】

    这篇文章主要介绍了js遍历添加栏目类添加css 再点击其它删除css的实例代码,非常不错,具有一定的参考借鉴借鉴价值,需要的朋友可以参考下
    2018-06-06

最新评论