Ort*_*tal 3 jquery jquery-validate
早上好
我一直在使用jquery验证功能,这很棒.但是,一旦组中的两个(或3个或4个)元素都正确,想知道是否可以将组错误标签清除.例如,如果我在组中有一个空的名字和姓,一旦我输入第一个名字,错误就会消失.我知道我可以禁用onfocusout功能,但我宁愿不这样做.谢谢!
这确实看起来像jQuery验证中的错误(你可以在这里提交一个bug ).要解决它,您可以定义一个非常特定的自定义规则:
$.validator.addMethod("name", function(value, element) {
return $("#firstname").val() !== '' && $("#lastname").val() !== '';
}, "Name is required");
Run Code Online (Sandbox Code Playgroud)
并仍然使用groups功能:
$("form").validate({
groups: {
name: "firstname lastname"
},
firstname: "name",
lastname: "name",
errorPlacement: function(error, $element) {
var name = $element.attr("name");
if (name === "firstname" || name === "lastname") {
error.insertAfter("#name");
} else {
error.insertAfter($element);
}
}
});
Run Code Online (Sandbox Code Playgroud)
自定义规则感觉不可维护和hacky,因为如果您的字段id发生更改,您的验证将会中断.但是,它确实摆脱了这个问题.
这是一个例子:http://jsfiddle.net/Rqbws/