$('#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