首頁  >  文章  >  微信小程式  >  jQuery實作所有驗證透過方可提交的表單實例講解

jQuery實作所有驗證透過方可提交的表單實例講解

小云云
小云云原創
2018-01-16 10:05:041671瀏覽

本文主要為大家詳細介紹了jQuery實現表單驗證,所有驗證通過方可提交,具有一定的參考價值,有興趣的小伙伴們可以參考一下,希望能幫助到大家。

<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Reg</title>
  <style>
   .state1{
    color:#aaa;
   }
   .state2{
    color:#000;
   }
   .state3{
    color:red;
   }
   .state4{
    color:green;
   }
  </style>
  <script src="jquery.js"></script>
  <script>
   $(function(){
 
    var ok1=false;
    var ok2=false;
    var ok3=false;
    var ok4=false;
    // 验证用户名
    $(&#39;input[name="username"]&#39;).focus(function(){
     $(this).next().text(&#39;用户名应该为3-20位之间&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state2&#39;);
    }).blur(function(){
     if($(this).val().length >= 3 && $(this).val().length <=12 && $(this).val()!=&#39;&#39;){
      $(this).next().text(&#39;输入成功&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state4&#39;);
      ok1=true;
     }else{
      $(this).next().text(&#39;用户名应该为3-20位之间&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state3&#39;);
     }
      
    });
 
    //验证密码
    $(&#39;input[name="password"]&#39;).focus(function(){
     $(this).next().text(&#39;密码应该为6-20位之间&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state2&#39;);
    }).blur(function(){
     if($(this).val().length >= 6 && $(this).val().length <=20 && $(this).val()!=&#39;&#39;){
      $(this).next().text(&#39;输入成功&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state4&#39;);
      ok2=true;
     }else{
      $(this).next().text(&#39;密码应该为6-20位之间&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state3&#39;);
     }
      
    });
 
    //验证确认密码
     $(&#39;input[name="repass"]&#39;).focus(function(){
     $(this).next().text(&#39;输入的确认密码要和上面的密码一致,规则也要相同&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state2&#39;);
    }).blur(function(){
     if($(this).val().length >= 6 && $(this).val().length <=20 && $(this).val()!=&#39;&#39; && $(this).val() == $(&#39;input[name="password"]&#39;).val()){
      $(this).next().text(&#39;输入成功&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state4&#39;);
      ok3=true;
     }else{
      $(this).next().text(&#39;输入的确认密码要和上面的密码一致,规则也要相同&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state3&#39;);
     }
      
    });
 
    //验证邮箱
    $(&#39;input[name="email"]&#39;).focus(function(){
     $(this).next().text(&#39;请输入正确的EMAIL格式&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state2&#39;);
    }).blur(function(){
     if($(this).val().search(/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/)==-1){
      $(this).next().text(&#39;请输入正确的EMAIL格式&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state3&#39;);
     }else{     
      $(this).next().text(&#39;输入成功&#39;).removeClass(&#39;state1&#39;).addClass(&#39;state4&#39;);
      ok4=true;
     }
      
    });
 
    //提交按钮,所有验证通过方可提交
 
    $(&#39;.submit&#39;).click(function(){
     if(ok1 && ok2 && ok3 && ok4){
      $(&#39;form&#39;).submit();
     }else{
      return false;
     }
    });
     
   });
  </script>
 </head>
<body>
 
<form action=&#39;do.php&#39; method=&#39;post&#39; >
 用 户 名:<input type="text" name="username">
    <span class=&#39;state1&#39;>请输入用户名</span><br/><br/>
 密  码:<input type="password" name="password">
    <span class=&#39;state1&#39;>请输入密码</span><br/><br/>
 确认密码:<input type="password" name="repass">
    <span class=&#39;state1&#39;>请输入确认密码</span><br/><br/>
 邮  箱:<input type="text" name="email">
    <span class=&#39;state1&#39;>请输入邮箱</span><br/><br/> 
 <a href="javascript:;" rel="external nofollow" ><img class=&#39;submit&#39; type=&#39;image&#39; src=&#39;./images/reg.gif&#39; /></a>
</form>
</body>
</html>

相關推薦:

##JS基於正規表示式實現的密碼強度驗證功能範例_javascript技巧

##Vue和Flask實現簡單的登入驗證跳轉

JS實作的簡單表單驗證功能範例

以上是jQuery實作所有驗證透過方可提交的表單實例講解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn