製作JS驗證碼(簡易)
阿新 • • 發佈:2018-12-23
源文地址:https://www.cnblogs.com/tutoo/p/4048736.html
本文只記錄自我的理解過程,附加上一些些自己的註釋
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8"/> <title>js編寫驗證碼</title> <style type="text/css" > .code /*此處為input(驗證碼顯示欄目的樣式)*/ { background-image:url(code.jpg); font-family:Arial; font-style:italic; color:Red; border:0; padding:2px 3px; letter-spacing:3px; font-weight:bolder; } .unchanged { border:0; } </style> <script language="javascript" type="text/javascript"> var code ; //在全域性 定義驗證碼 function createCode() { code = ""; var codeLength = 6;//驗證碼的長度 var checkCode = document.getElementById("checkCode"); var selectChar = new Array(0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');//所有候選組成驗證碼的字元,當然也可以用中文的 for(var i=0;i<codeLength;i++) { var charIndex = Math.floor(Math.random()*36); //Math.random得到0-36中隨機的一個數,floor取整數部分 code +=selectChar[charIndex]; } // alert(code); if(checkCode) { checkCode.className="code"; checkCode.value = code; /*與傳統程式語言不一樣,直接是A=getElementById A即是這個getElementById*/ } } function validate () { var inputCode = document.getElementById("input1").value; if(inputCode.length <=0) { alert("請輸入驗證碼!"); } else if(inputCode != code ) { alert("驗證碼輸入錯誤!"); createCode();//重新整理驗證碼 } else { alert("^-^ OK"); } } </script> </head> <body onload="createCode()" > <form action="#"> <input type="text" id="input1" /> <input type="text" onclick="createCode()" readonly="readonly" id="checkCode" class="unchanged" style="width: 80px" /><br /> <input id="Button1" onclick="validate();" type="button" value="確定" /> </form> </body> </html>