jQuery Validate插件,需要两个字段中的一个

我有一个有两个字段的表格; 手机号码。 和电话号码。

必须填写至少一个字段,但两者都可以填写。

如果没有填充错误,我需要jquery validate来抛出错误。

我已经实现了这个:

rules: { mobile:{ required: { depends: function(element) { return $("#regTelephone").val() === ''; } } }, telephone:{ required: { depends: function(element) { return $("#regMobile").val() === ''; } } } } 

但是,如果只有一个字段为空,则此字段仍然会获得“有效”类,我不希望这样,因为我的有效css具有绿色边框(因此空字段仍然为绿色边框)

所以:我如何得到空的字段(提供另一个有值)以获得有效的类,因此得到绿色边框?

使用可选的additional-methods.js文件 ,有一个名为require_from_group的方法,它完全按照您的要求执行。 (您必须至少使用插件的1.11.1版本才能避免过去的错误。)

 rules: { mobile:{ require_from_group: [1, '.mygroup'] }, telephone:{ require_from_group: [1, '.mygroup'] } }, .... 

1参数是组中需要多少1参数。 在HTML标记中,组中的字段必须包含与第二个参数中指定的class匹配的class

   

工作演示 : http : //jsfiddle.net/NfcxX/

我的演示还显示了groups选项,它将多个错误消息合并为一个。

   rules: { mobile:{ required: { depends: function(element) { return $("#regTelephone").val() == '' } } }, telephone:{ required: { depends: function(element) { return $("#regMobile").val() == '' } } } }