JS实现4位随机验证码

时间:2022-05-27 16:41:28

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

通过随机数编写一个不分大小写且含数字的4位随机数。

CSS样式

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
p{
 width: 60px;
 height: 20px;
 display: inline-block;
 letter-spacing: 3px;
 border: 1px solid red;
}
#div{
 height: 20px;
 margin-bottom: 10px;
}
#btn,p:hover{
 cursor: default;
}
button{
 display: block;
}

主体部分

?
1
2
3
4
5
6
7
<div id="box">
验证码
 <input type="text" id="int" />
 <p id="p"></p>
 <div id="div"></div>
 <button id="btn">提交</button>
</div>

JS部分

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//随机数
function random(max,min){
 return Math.round(Math.random()*(max-min)+min);
}
//随机4位验证码
function code(){
 //将数字、小写字母及大写字母输入
 var str="1234567890qwertyuioplkjhgfdsazxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM";
 //给一个空字符串
 var res='';
 //循环4次,得到4个字符
 for(var i=0;i<4;i++){
 //将得到的结果给字符串,调用随机函数,0最小数,62表示数字加字母的总数
 res+=str[random(0,62)];
 }
 p.innerHTML=res;
}
code(); //调用验证码函数
p.onclick=code; //点击也可以刷新验证码
//验证验证码
btn.onclick=function(){
 var int=document.getElementById("int").value;//获取用户输入的值
 var p=document.getElementById("p").innerText;//获取验证码
 //判断用户输入与验证码的大写一致(不分大小写)
 if(int.toUpperCase()==p.toUpperCase()){
 div.innerHTML="验证码正确";
 }else{
 div.innerHTML="验证码错误";
 }
}

实现结果

JS实现4位随机验证码

总结

Math.round():四舍五入
Math.random():随机数
toUpperCase():将字符串转为大写

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

原文链接:https://blog.csdn.net/Handsome_gir/article/details/109134608