自JQuery Validation Plugin版本1.9.0
发布以来,验证检查[source]已自动忽略隐藏字段。
根据release notes,解决此问题的方法是在验证函数中设置ignore: []
。
使用版本1.10.0
,我无法将其用于使用display: none
或visibility: hidden
隐藏的输入字段。
我的验证是使用类完成的(例如class="required"
),验证函数非常基础:
JQuery的的
$("form").validate({
ignore: [],
errorPlacement: function(error, element) {
error.appendTo( $('#error-message') )
},
invalidHandler: function() {
//do something
},
submitHandler: function() {
//do something else
}
});
工作示例:http://jsfiddle.net/fbCVY/
有谁可以指出我哪里出错?
答案 0 :(得分:6)
我认为您需要为每个id
标记提供唯一的name
和唯一的input
属性,以便验证插件可以找到字段并将它们分开。两个“隐藏”字段没有失败验证,因为表单上的第一个字段传递,并且该结果用于其他两个字段。
答案 1 :(得分:2)
尝试使用规则:
$("form").validate({
ignore: "",
rules: {
name: ["aa", "ee"]
},
errorPlacement: function(error, element) {
error.appendTo( $('#error-message') )
},
invalidHandler: function() {
//do something
},
submitHandler: function() {
//do something else
}
});
问候。