2
$('#reg_form').validate({
                onkeyup: false,
                errorClass: 'error',
                validClass: 'valid',
                rules: {
                    username: {
                        required: true,
                        minlength: 5,
                        //remote: "user_check.php"
                    },
                    password: {
                        required: true,
                        minlength: 5
                    },
                    confirm_password: {
                        required: true,
                        minlength: 5,
                        equalTo: "#password"
                    },
                    secretQuestion: "required",
                    secretAnswer: "required",
                    emailId: {
                        required: true, 
                        email: true
                    },
                    termsConditions: "required"                 
                },
                messages:{
                    username: {
                        required: "Please enter Username",
                        minlength: "Please enter atleast 5 characters",
                        //remote: jQuery.format("{0} is already in use")
                    },
                    password: {
                        required: "Please provide a password",
                        minlength: "Your password must be at least 5 characters long"
                    },
                    confirm_password: {
                        required: "Please provide a password",
                        minlength: "Your password must be at least 5 characters long",
                        equalTo: "Please enter the same password as above"
                    },
                    secretQuestion: "Please select your question",
                    secretAnswer: "Please enter your secret answer",
                    emailId: "Please enter a valid email address",
                    termsConditions: "Please accept our Terms and COnditions"
                },
                highlight: function(element) {
                    $(element).closest('div').addClass("f_error");
                },
                unhighlight: function(element) {
                    $(element).closest('div').removeClass("f_error");
                },
                errorPlacement: function(error, element) {
                    $(element).closest('div').append(error);
                }
            });
4

4 回答 4

4

当您通过“规则:”设置验证时,您需要输入的“名称”而不是“id”。

所以对于这样的输入:

<input type="text" name="password_name" id="password_id></input>
<input type="text" name="confirm_password_name" id="confirm_password_id></input>

您应该在验证中更改它:

password_name: {
  required: true,
  minlength: 5
},
confirm_password_name: {
  required: true,
  minlength: 5,
  equalTo: "#password_id"
}

希望它会奏效。

于 2014-02-06T13:27:52.300 回答
3
于 2012-07-06T15:13:56.313 回答
1

只需确保在 html 页面检查包含的模板上没有相同的 id

注意:对于测试,只需更改 id,如 register_pass 和 login_pass 或只是 pass1
1)。如果成功,则 id 在您的 html 上不是唯一的
2)。如果失败则打开控制台检查 jquery 或验证 js 是否可用

于 2015-08-21T08:18:54.413 回答
0

是的,它直接不起作用。

Firefox 17.0.1
jQuery 1.8.3
jQuery 验证插件 1.10.0

如果您只使用字段名称,则它不起作用:

...equalTo="密码"....

相反,需要使用 id:

...equalTo="#password"....

于 2012-12-13T20:29:38.080 回答