js生成验证码并验证

  1. <html>  
  2.     <head>  
  3.         <title>验证码</title>  
  4.         <style type="text/css">  
  5.             #code  
  6.             {  
  7.                 font-family:Arial;  
  8.                 font-style:italic;  
  9.                 font-weight:bold;  
  10.                 border:0;  
  11.                 letter-spacing:2px;  
  12.                 color:blue;  
  13.             }  
  14.         </style>  
  15.         <script type = "text/javascript" src = "checkCode.js">  
  16.         </script>  
  17.     </head>  
  18.     <body>  
  19.         <div>  
  20.             <input type = "text" id = "input"/>  
  21.             <input type = "button" id="code" onclick="createCode()"/>  
  22.             <input type = "button" value = "验证" onclick = "validate()"/>  
  23.         </div>  
  24.     </body>  
  25. </html>  

checkCode.js

var code ; //在全局定义验证码   
//产生验证码  
window.onload = function createCode(){  
     code = "";   
     var codeLength = 4;//验证码的长度  
     var checkCode = document.getElementById("code");   
     var random = 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 index = Math.floor(Math.random()*36);//取得随机数的索引(0~35)  
        code += random[index];//根据索引取得随机数加到code上  
    }  
    checkCode.value = code;//把code值赋给验证码  
}  
//校验验证码  
function validate(){  
    var inputCode = document.getElementById("input").value.toUpperCase(); //取得输入的验证码并转化为大写        
    if(inputCode.length <= 0) { //若输入的验证码长度为0  
        alert("请输入验证码!"); //则弹出请输入验证码  
    }         
    else if(inputCode != code ) { //若输入的验证码与产生的验证码不一致时  
        alert("验证码输入错误!@_@"); //则弹出验证码输入错误  
        createCode();//刷新验证码  
        document.getElementById("input").value = "";//清空文本框  
    }         
    else { //输入正确时  
        alert("^-^"); //弹出^-^  
    }             
}  

  

posted @ 2017-03-19 20:53  linuxsec  阅读(86)  评论(0)    收藏  举报