作为这个问题的必然结果,我如何配置jQuery Validate来验证表单中的一些隐藏字段,但不是全部?
jQuery Validate 默认忽略隐藏字段,这在ASP.NET项目中是一个问题.例如,一个页面可能有一个带有复选框助手(生成隐藏inputs
)的表单,以及可能利用许多隐藏输入的自定义下拉列表.
$(document).ready(function() { $('#myform').validate({ ignore: [], // any other options and/or rules }); });
像这样使用配置对象,有什么方法可以让我设置它以允许我选择要验证的特定隐藏输入,而不必指定插件必须忽略的每个单独输入?
或者,是否存在我可以在此方案中使用的验证事件挂钩?
该默认值的ignore
属性":hidden"
.您可以简单地使用:not()
伪类来否定特定类被忽略.
例如,如果使用选择器":hidden:not(.do-not-ignore)"
,jQuery validate将忽略除隐藏元素之外的所有隐藏元素.do-not-ignore
:
$('#myform').validate({ ignore: ':hidden:not(.do-not-ignore)', // any other options and/or rules });
这样,您可以将类添加.do-not-ignore
到您仍想要验证的隐藏元素中.