JQuery UI 手风琴 JQuery 不显眼的验证有问题

JQuery UI Accordion having issue with JQuery Unobtrusive Validation

我在多个手风琴面板上有数据字段,只有当所有面板上的必填字段都已填写时,用户才能提交。似乎 JQuery Unobtrusive Validation 没有验证样式为 "display:none" 的折叠面板上的字段,这里我不是在询问 JQuery 验证,它实际上似乎能够验证隐藏字段使用适当的默认值,它是关于不引人注目的验证。

这是我的 jsfiddle 示例: first example is using the JQuery unobtrusive validation, second example 只是使用 JQuery 验证。

 $.validator.setDefaults({ ignore: [] });

 $.validator.setDefaults({ ignore: [] }); 

在这些示例中,第一个面板上的 4 个字段都是必需的,第二个面板的前 3 个字段是必需的。

以上代码可能适用于 JQuery 验证(至少在 FF 中)但不适用于 JQuery 非侵入式验证,以下代码没有帮助: $.validator.setDefaults({ 忽略: ""}); 我想我们可以将折叠面板的样式 "display:none" 更改为其他样式,然后再次验证这有点老套。

我今天在不显眼的验证和 bootstrap 手风琴方面遇到了类似的问题。这对我有用:

$(function () {
     var formValidator = $('form').validate();
     formValidator.settings.ignore = ""; // validate hidden fields
});

这里是 fork of your first example 所做的更改。注意:我还注释掉了提交函数中验证的调用。