mjtabu

纯js验证码

<!DOCTYPE html>
<html>
    <head>
        <title>纯js验证码</title>
    </head>
<style>
#code{font-family:Arial; font-style:italic; font-weight:bold; border:0; letter-spacing:2px; color:blue;  }  
</style>
<script src="https://lib.baomitu.com/jquery/3.4.1/jquery.js"></script>
<body>
    <div style="width:300px;">
        <span class="web-form-span " >验证码:</span>
        <input  type="text" class=" web-form-input " required="required" id="Yzm" style="width: 30%;float: initial;" >
        <input type = "button" id="code" value="点我验证" class="btn-list-btn" onclick="createCode()"/>
    </div>    
</body>
<script>
    //在全局定义验证码
    var code; 
    //产生验证码
    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\',
            \'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()*62);//取得随机数的索引(0~61)
            code += random[index];//根据索引取得随机数加到code上
        }
        checkCode.value = code;//把code值赋给验证码
    }
    //校验验证码
    document.getElementById("Yzm").addEventListener("change",validate);
    //验证事件
    function validate(){
        var inputCode = document.getElementById("Yzm").value.toUpperCase(); //取得输入的验证码并转化为大写
        if(inputCode.length <= 0) { //若输入的验证码长度为0
          alert("请输入验证码!"); //则弹出请输入验证码
          $("#Yzm").focus();
          YZM = false;
        } else if(inputCode != code ) { //若输入的验证码与产生的验证码不一致时
          alert("验证码输入错误!@_@"); //则弹出验证码输入错误
          createCode();//刷新验证码
          $("#Yzm").val("");//清空文本框
          $("#Yzm").focus();//重新聚焦验证码框
          YZM = false;
        } else { //输入正确时
          $("#Yzm").blur();//绑定验证码输入正确时要做的事
          YZM = true;
          alert("验证码正确!"); 
        }
    };
</script>
</html>

 

分类:

技术点:

相关文章: