3

アプリケーションにstruts2フレームワークを使用しています。また、クライアント側でフォーム入力を検証するためにjquery検証を使用しています。しかし、どちらもうまくいきません。

そこに配置したいUserBeanクラスがあります。

私は次のjquery&strutsフォームを使用しています..フォームを検証しません

    <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>
4

1 に答える 1

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>

また、nameプロパティにプレフィックスが付いたフィールドのjQuery Validationに従って、名前にaが含まれているため、名前を引用符で囲む必要があります.

于 2012-08-11T03:31:15.497 に答える