2014-01-14 127 views
0

我是jquery的新手,並且使用了一個asp.net表單,其中有3個文本框和1個按鈕。我的代碼正在工作,但有一個問題,並非我所有的驗證都在同一時間工作。例如:我留下用戶名文本框,並再次輸入密碼和密碼,只顯示1個文本框錯誤。jquery驗證問題

我的Java Script代碼:

<script type="text/javascript" src="jquery-1.10.2.min.js"></script> 

<script type="text/javascript"> 
    $("document").ready(function() { 
     $("#<%=style2.ClientID%>").click(function() { 
      var valid = false 
      errorMessage = "" 
      var pass = $("#<%=textbox4.ClientID%>").val(); 
      var pass1 = $("#<%=textbox5.ClientID%>").val(); 
      if ($("#<%=textbox1.ClientID%>").val() == '') { 
       errorMessage = "please enter your name \n" 
       valid = true 
      } 

      else if (pass != pass1) { 
       errorMessage = "password not match" 
       valid = true 
      } 
      if (valid==true) { 
       alert(errorMessage) 
       return false 
      } 

     }); 
     $("#<%=textbox4.ClientID%>").keypress(function() { 
      $("#<%=Label1.ClientID %>").text(countlength($("#<%=textbox4.ClientID%>").val())) 
      function countlength(len) { 
       var count = 0 
       if (len.length < 8) { 
        return "Chracters Atleast 8" 
       } 
       else { 
        return "Strong Password" 
       } 
      } 
     }); 
    }); 
</script> 

回答

0

這是因爲你寫的錯誤消息作爲警報。如果你想檢查所有字段,然後打開一個錯誤消息,你應該在提交按鈕上分配檢查,並在所有字段填充並且用戶想要提交表單時打開一個彈出窗口。

其他方法是分別檢查每個字段並打開不彈出,但例如div字段值已更改後輸入字段下正確的錯誤信息。

+0

你能告訴我一些有意義的例子嗎? – Ammi

0

//從您的 '的if-else' 語句 '其他' 與 '+' 號

$("#<%=style2.ClientID%>").click(function() 
    { 
      var valid = false 
      errorMessage = "" 
      var pass = $("#<%=textbox4.ClientID%>").val(); 
      var pass1 = $("#<%=textbox5.ClientID%>").val(); 
      if ($("#<%=textbox1.ClientID%>").val() == '') { 
       errorMessage = "please enter your name \n" 
       valid = true 
      } 

      //Remove else 
      if (pass != pass1) { 
      //concatenate error message 
       errorMessage += "password not match" 
       valid = true 
      } 
      if (valid==true) { 
       alert(errorMessage) 
       return false 
      } 

    }); 

希望這將工作拼接錯誤消息。