Jquery Validator和已隐藏的字段

我试图让Jquery validationn插件在提交时不validation隐藏字段。 例如,如果我们有这样的HTML:

然后打电话:

 $('div#2').hide(); 

并提交表格,即使第二个输入可能有一些错误的数据输入表格仍应提交。 我想更改validation代码,但找不到相关的片段。

从字段中删除validation的最简单方法是向它们添加disabled属性。

 var $div2 = $('div#2'); $div2.hide(); $('input, select, textarea', $div2).attr('disabled', 'disabled'); 

它们不会被validation。 但这也会导致无法在服务器上提交禁用字段。 如果您不需要在服务器上提交这些手动隐藏的字段,那么技术就很好。

另一种方法是使用删除规则和添加规则函数手动添加和删除元素中的所有validation规则。 这当然更复杂,因为您必须为每个输入逐个添加和删除每个规则。