JavaScript 正則表單驗證(用戶名、密碼、確認密碼、手機號、座機號、身份證號)


1、關於JavaScript表單驗證,如果使用雙向綁定的前端js框架,會更容易的多。但是博主還是建議大家不要脫離源生js本身。因為源生js才是王道。

注意:

  a、代碼中的錯誤提示可能會沒有,在代碼中找到 “錯誤.jpg”  圖片,自己制作一個

  b、驗證的判斷已經完成,只需要根據自己的驗證規則進行表單驗證,更換自己的正則表達式。

  c、博主將錯誤提示圖片插入本文檔中。需要更名為  “錯誤.jpg”,放到與html根目錄下方可使用。

        (錯誤提示圖片)

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
       <table border="1">
    <form action="正則驗證手機號.html" name="form1" method="post" onsubmit="return test()">
        <tr>
            <td align="right">用戶名:</td>
            <td><input type="text" name="username"></td>
            <td><span id="namemsg">*</span></td>
        </tr>
        <tr>
            <td align="right">密碼:</td>
            <td><input type="password" name="pwd"></td>
            <td><span id="pwdmsg">*</span></td>
        </tr>
        <tr>
            <td align="right">確認密碼:</td>
            <td><input type="password" name="pwd1"></td>
            <td><span id="pwd1msg">*</span></td>
        </tr>
        <tr>
            <td align="right">手機號:</td>
            <td><input type="text" name="phone"></td>
            <td><span id="iphone1">*</span></td>
        </tr>
        <tr>
            <td align="right">座機號:</td>
            <td><input type="text" name="phone1"></td>
            <td><span id="iphone2">*</span></td>
        </tr>
        <tr>
            <td align="right">身份證號:</td>
            <td><input type="text" name="sfzid"></td>
            <td><span id="sfzmsg">*</span></td>
        </tr>
        <tr>
            <td colspan="3">
            <input type="submit" name="sub" value="注冊">
            <input type="reset" name="ret" value="重置" onclick="test1()">
            </td>
        </tr>
    </form>
   </table>

   <script type="text/javascript">
     //用戶名驗證
     document.form1.username.onkeyup=function(){
        var reg=/^[a-zA-Z]{1}[A-Z|a-z|0-9]{5,29}/;
         if(reg.test(this.value)&&this.value.length>=6&&this.value.length<=30){
             document.getElementById("namemsg").innerHTML="輸入正確";
         }else{
            document.getElementById("namemsg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
         }
     }
     //密碼驗證
     document.form1.pwd.onkeyup=function(){
        var reg1=/[A-Za-z]+[0-9]+/;
         if(reg1.test(this.value)&&this.value.length>=6&&this.value.length<=8){
             document.getElementById("pwdmsg").innerHTML="輸入正確";
         }else{
             document.getElementById("pwdmsg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
         }
     }
     //確認密碼
     document.form1.pwd1.onkeyup=function(){
         if(this.value==document.form1.pwd.value&&this.value!=""){
             document.getElementById("pwd1msg").innerHTML="輸入正確";
         }else{
             document.getElementById("pwd1msg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
         }
     }
     //手機號驗證
     document.form1.phone.onkeyup=function(){
         var reg2=/^(13|14|15|17|18)[0-9]{9}/;
         if(reg2.test(this.value)&&this.value.length==11){
             document.getElementById("iphone1").innerHTML="輸入正確";
         }else{
             document.getElementById("iphone1").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
         }
       }
     //座機號驗證
     document.form1.phone1.onkeyup=function(){
         var reg3=/^[0-9]{3,4}(\-{1})[0-9]{7,8}/;
         if(reg3.test(this.value)&&this.value.length==13||this.value.length==12){
             document.getElementById("iphone2").innerHTML="輸入正確";
         }else{
             document.getElementById("iphone2").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
         }
     }
     //身份證號驗證
     document.form1.sfzid.onkeyup=function(){
         var reg4=/^\d{17}[(0-9)|X|x ]{1}/;
         if(reg4.test(this.value)&&this.value.length==18){
             document.getElementById("sfzmsg").innerHTML="輸入正確";
         }else{
             document.getElementById("sfzmsg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
         }
     }

     //注冊按鈕方法
     function test(){
         var str="輸入正確"
         if(document.getElementById("namemsg").innerHTML!==str){
            document.getElementById("namemsg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
            document.form1.username.focus();
            document.form1.username.value="";
            return false;
         }
         if(document.getElementById("pwdmsg").innerHTML!==str){
            document.getElementById("pwdmsg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
            document.form1.pwd.focus();
            document.form1.pwd.value="";
            return false;
         }
         if(document.getElementById("pwd1msg").innerHTML!==str){
            document.getElementById("pwd1msg").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
            document.form1.pwd1.focus();
            document.form1.pwd1.value="";
            return false;
         }
         if(document.getElementById("iphone1").innerHTML!==str){
            document.getElementById("iphone1").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
            document.form1.phone.focus();
            document.form1.phone.value="";
            return false;
         }
         if(document.getElementById("iphone2").innerHTML!==str){
            document.getElementById("iphone2").innerHTML="<img src='錯誤.jpg' width='15' height='15'>";
            document.form1.phone1.focus();
            document.form1.phone.value="";
            return false;
         }
     }
   </script>
</body>
</html>

 


免責聲明!

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



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