<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>用js做數字字母混合的隨機四位驗證碼</title> </head> <body> <input type="text" id="txt"/> // 創建一個文本框 <input type="button" value="刷新驗證碼" id="btn"/> //創建一個刷新按鈕 </body> <script> var oTxt=document.getElementById("txt"); var oBtn=document.getElementById("btn"); function random(a,b){ return Math.round(Math.random()*(a-b)+b); } oBtn.onclick=function(){ oTxt.value=""; //每次點擊刷新文本框內四位二維碼,防止多次點擊驗證碼疊加。 var arr=[ ]; //定義一個空數組 for(var i=0;i<26;i++){ arr.push(String.fromCharCode(65+i)); //向數組中添加26位大寫字母 } for(var i=0;i<26;i++){ arr.push(String.fromCharCode(97+i)); //向數組中添加26位小寫字母 } for(var j=0;j<=9;j++){ arr.push(j); // 向數組中添加0-9共10位數字 } console.log(arr); //在控制台打印出這個含有大小寫字母和數字的數組,方便查看是否出錯,可去除。 for(var m=0;m<4;m++){ //循環四次,從而打印出四位隨機驗證碼 oTxt.value+=arr[random(0,61)]; //給文本框賦值,用random()調用外部函數,隨機產生索引為0-61的數,將這個索引位表示的數賦值給文本框。 } } </script> </html>