JavaScript實(shí)現(xiàn)4位隨機(jī)驗(yàn)證碼的生成
更新時(shí)間:2021年01月28日 10:48:03 作者:weixin_42026831
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)4位隨機(jī)驗(yàn)證碼的生成,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了JavaScript生成4位隨機(jī)驗(yàn)證碼的具體代碼,供大家參考,具體內(nèi)容如下
代碼:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>4位隨機(jī)驗(yàn)證碼的生成</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">請(qǐng)輸入驗(yàn)證碼:</label><input type="text" id="tex" maxlength="4" autofocus>
<div id="showyz"></div>
<div id="hyz">換一張</div><br>
<input type="button" id="btn" value="確認(rèn)">
</body>
<script>
//定義個(gè)空數(shù)組保存62個(gè)編碼
var codes=[];
//將數(shù)字對(duì)應(yīng)的編碼保存到codes數(shù)組中,數(shù)字編碼范圍【48-57】
for(var i=48;i<=57;i++){
codes.push(i);
}
//將大寫字母對(duì)應(yīng)的編碼保存到codes數(shù)組中,對(duì)應(yīng)編碼范圍【65-90】
for(var i=65;i<=90;i++){
codes.push(i);
}
//將小寫字母對(duì)應(yīng)的編碼保存到codes數(shù)組中,對(duì)應(yīng)編碼范圍【97-122】
for(var i=97;i<=122;i++){
codes.push(i);
}
//定義個(gè)方法生成62位隨機(jī)數(shù)作為數(shù)組角標(biāo)返回隨機(jī)的編碼,再將其編碼轉(zhuǎn)化為對(duì)應(yīng)數(shù)字或者字母
function suiji(){
var arr=[];//定義個(gè)數(shù)組保存4位隨機(jī)數(shù)
for(var i=0;i<4;i++){
var index=Math.floor(Math.random()*(61-0+1)+0);//生成個(gè)隨機(jī)數(shù)
var char=String.fromCharCode(codes[index]);//解碼
arr.push(char); //存入到數(shù)組arr中
}
return arr.join("");//將數(shù)組轉(zhuǎn)為字符串,以空格分隔,并返回
}
var yzm=suiji();//調(diào)用方法,將放回的驗(yàn)證碼返回到y(tǒng)zm中
//獲取上述元素
var tex=document.getElementById("tex");
var showyz=document.getElementById("showyz");
var hyz=document.getElementById("hyz");
var btn=document.getElementById("btn");
//將驗(yàn)證碼寫入到id為showyz的div中
showyz.innerHTML=yzm;
//實(shí)現(xiàn)換一張驗(yàn)證碼功能
hyz.οnclick=function(){
yzm=suiji();
showyz.innerHTML=yzm;
}
//將自己輸入的驗(yàn)證碼與獲取的隨機(jī)驗(yàn)證碼驗(yàn)證
btn.οnclick=function(){
var textvalue=tex.value;//獲取輸入的值
if(textvalue.toLowerCase()==yzm.toLowerCase()){//將值都轉(zhuǎn)為小寫比較
alert("驗(yàn)證碼輸入正確!");
yzm=suiji();
showyz.innerHTML=yzm;
tex.value="";
}
else{
alert("驗(yàn)證碼輸入錯(cuò)誤,請(qǐng)重新輸入!");
yzm=suiji();
showyz.innerHTML=yzm;
tex.value="";
}
}
</script>
</html>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解JS中統(tǒng)計(jì)函數(shù)執(zhí)行次數(shù)與執(zhí)行時(shí)間
這篇文章給大家分享了JS中統(tǒng)計(jì)函數(shù)執(zhí)行次數(shù)與執(zhí)行時(shí)間的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們分享下。
2018-09-09
webpack與SPA實(shí)踐之管理CSS等資源的方法
本篇文章主要介紹了webpack與SPA實(shí)踐之管理CSS等資源的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
2017-12-12
js使用xml數(shù)據(jù)載體實(shí)現(xiàn)城市省份二級(jí)聯(lián)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了js使用xml數(shù)據(jù)載體實(shí)現(xiàn)城市省份二級(jí)聯(lián)動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
2017-11-11
在layui tab控件中載入外部html頁(yè)面的方法
今天小編就為大家分享一篇在layui tab控件中載入外部html頁(yè)面的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
2019-09-09
js遍歷添加欄目類添加css 再點(diǎn)擊其它刪除css【推薦】
這篇文章主要介紹了js遍歷添加欄目類添加css 再點(diǎn)擊其它刪除css的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒借鑒價(jià)值,需要的朋友可以參考下
2018-06-06 
