jquery validate – 组及其标签

早上好

我一直在使用jqueryvalidationfunction,这很棒。 但是,一旦组中的两个(或3个或4个)元素都正确,想知道是否可以将组错误标签清除。 例如,如果我在组中有一个空的名字和姓氏,一旦我输入第一个名字,错误就会消失。 我知道我可以禁用onfocusoutfunction,但我宁愿不这样做。 谢谢!

这确实看起来像jQueryvalidation中的错误(你可以在这里提交一个bug)。 要解决它,您可以定义一个非常特定的自定义规则:

$.validator.addMethod("name", function(value, element) { return $("#firstname").val() !== '' && $("#lastname").val() !== ''; }, "Name is required"); 

并且仍然使用groupsfunction:

 $("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); } } }); 

自定义规则感觉不可维护和hacky,因为如果您的字段id发生更改,您的validation将会中断。 但是,它确实摆脱了这个问题。

这是一个例子: http : //jsfiddle.net/Rqbws/