2012-08-10 84 views
3

我正在爲我的應用程序使用struts2框架。 我也使用jquery驗證來驗證客戶端的表單輸入。然而,他們都不會很好地相互配合。JQuery不驗證struts2表格

我有UserBean類,我想它在那裏。

我米使用下面的jQuery &支柱形成..這不驗證形式

<script type="text/javascript"> 
     $(document).ready(function(){ 
      var validator = $("#myform").validate({ 
       rules: { 
        username: "required", 
        password: "required" 
       }, 
       messages: { 
        username: "Please enter your username", 
        password: "Please enter your password" 
       } 
      }); 
     }); 
    </script> 

<s:form method="POST" action="doLogin" name="myform" id="myform" cssClass="form" theme="simple"> 
      <s:fielderror theme="simple" > 

        <label class="control-label" for="username">User Name </label> 

         <s:textfield name="userBean.userName" label="USER NAME"/> 
         <s:param>userBean.userName</s:param> 



        <label class="control-label" for="username">Password </label> 


         <s:password name="userBean.password" label="PASSWORD" /> 
         <s:param>userBean.password</s:param> 

       <s:submit name="Submit" value="Submit"/> 
      </s:fielderror> 
     </s:form> 
+0

我使用這些組合與像10+應用程序和它完美fine.i工作敢肯定問題出在其他一些area.are你好嗎firbug等任何錯誤? – 2012-08-10 10:18:42

+0

頁面沒有錯誤。問題在於被呈現爲這是上述jQuery未拾取的內容 – Shrey 2012-08-10 11:16:29

+0

什麼是'userBean' ?如果'userBean.userName'是資源包中的一個屬性,則必須將' Pigueiras 2012-08-10 13:49:25

回答

2

您輸入的名稱是userBean.userNameuserBean.password所以你的腳本聲明必須匹配爲了名工作:

<script type="text/javascript"> 
    $(document).ready(function(){ 
     var validator = $("#myform").validate({ 
      rules: { 
       "userBean.userName": "required", 
       "userBean.password": "required" 
      }, 
      messages: { 
       "userBean.userName": "Please enter your username", 
       "userBean.password": "Please enter your password" 
      } 
     }); 
    }); 
</script> 

根據jQuery Validation on field(s) with a prefix in the name property,您需要將該名稱放在引號中,因爲它包含名稱中的.

+0

我想這應該workk ..!將嘗試:)謝謝soo! – Shrey 2012-08-12 08:28:01

+0

作品魅力! :)謝謝你太多了! – Shrey 2012-08-13 04:38:08