2012-08-10 78 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