JS 實現隨機驗證碼功能


1、驗證碼 驗證是網頁常出現的一個驗證點,所謂驗證碼類型有很多,下面代碼只是實現一個簡單的驗證功能。

    <div>  
        <input type = "text" id = "input" value="" />  
        <input type = "button" id="code" onclick="createCode()"/>  
        <input type = "button" value = "驗證" onclick = "validate()"/>  
    </div> 

2、隨便加點樣式

 

 #code{  
                font-family:Arial;  
                font-style:italic;  
                font-weight:bold;  
                border:0;  
                letter-spacing:2px;  
                color:blue;  
            }

 

3.JS部分,里面我已經加了詳細的備注

    //設置一個全局的變量,便於保存驗證碼
    var code;
    function createCode(){
        //首先默認code為空字符串
        code = '';
        //設置長度,這里看需求,我這里設置了4
        var codeLength = 4;
        var codeV = 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');
        //循環codeLength 我設置的4就是循環4次
        for(var i = 0; i < codeLength; i++){
            //設置隨機數范圍,這設置為0 ~ 36
             var index = Math.floor(Math.random()*36);
             //字符串拼接 將每次隨機的字符 進行拼接
             code += random[index]; 
        }
        //將拼接好的字符串賦值給展示的Value
        codeV.value = code;
    }

    //下面就是判斷是否== 的代碼,無需解釋
    function validate(){
        var oValue = document.getElementById('input').value.toUpperCase();
        if(oValue ==0){
            alert('請輸入驗證碼');
        }else if(oValue != code){
            alert('驗證碼不正確,請重新輸入');
            oValue = ' ';
            createCode();
        }else{
            window.open('http://www.baidu.com','_self');
        }
    }

    //設置此處的原因是每次進入界面展示一個隨機的驗證碼,不設置則為空
    window.onload = function (){

        createCode();
    }

 

 

PS:不放自己試一下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM