$('#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);
}
});
回答
似乎没有任何理由说明为什么在代码中显然会失败。假设你的密码输入有id="password"
,一切都应该没问题。
我创建了一个缩短例子展示了equalTo
规则工作:http://jsfiddle.net/ryleyb/MnnE5/
在未来,对于这样的问题,尽量让演示您的问题尽可能小的例子 - 我们并不需要有规则并为您的整个表单,只有2个密码字段的消息。发布相关的HTML表单标记也是有帮助的。
是的,这是直线不起作用。
火狐17.0.1
的jQuery 1.8.3
jQuery的验证插件1.10.0
它不工作,如果你只是使用的字段名称:
... equalTo = “密码”。 ...
相反,需要使用ID:
... equalTo = “#密码” ....
是的,这就是你应该如何使用它。请参阅文档中的示例:http://docs.jquery.com/Plugins/Validation/Methods/equalTo – 2012-12-14 09:23:43
当您通过“rules:”设置验证时,您需要输入的“名称”而不是“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"
}
希望它会工作。
只要确保没有对html页面检查相同的ID包含的模板也
注:测试只是改变ID喜欢register_pass和login_pass或只是PASS1
1)。如果成功,那么id不是唯一的你的html
2)。如果失败,然后打开控制台检查,如果jQuery或验证js是否有效
- 1. jQuery的验证插件 - equalTo不工作
- 2. jQuery验证equalTo不是Grails的工作
- 3. substitut在jQuery的equalTo()方法验证
- 4. jquery getJson方法在HTML中不工作
- 5. 在JQuery中不工作的POST方法
- 6. Javascript/jquery方法不工作
- 7. jQuery .click方法不工作
- 8. jQuery .blur方法不工作
- 9. removeClass方法不工作jquery
- 10. jquery方法不工作
- 11. jquery .live()方法不工作?
- 12. jQuery - 方法链不工作
- 13. jquery方法不工作
- 14. EqualTo jquery有效不起作用
- 15. 香菜数据equalto不工作
- 16. jQuery验证 - 密码确认equalTo不工作
- 17. Jquery验证:从自定义验证方法调用equalTo方法
- 18. jquery中的“nearest()”方法不会工作
- 19. jQuery的load()方法中IE9不工作
- 20. 显示()方法在jquery不工作
- 21. remove()方法在jQuery是不工作
- 22. form.submit方法不是在jQuery的工作
- 23. 在jQuery“ajax”中关闭工作方法
- 24. jQuery ajax成功方法在ie8中工作,但不在ie9中?
- 25. jQuery方法'hasClass'在FF中正常工作,但不在铬中
- 26. 方法不在片段中工作(但在作业中工作)
- 27. remove()在jquery中不工作,转不出方法
- 28. JQuery .show()方法不工作后.hide
- 29. 的jQuery的.css()方法不工作
- 30. JQuery每个和方法不工作
不,它不工作 – Sachin 2012-07-06 12:00:37
我有3个窗体在一个文件中。 equalTo()不起作用。请帮我 – Sachin 2012-07-06 12:29:43
这是很多赞成票没有解释...成为更好的人! – Ryley 2012-07-06 15:07:16