2

我是 Jquery 的新手。我正在使用具有 14 个字段的表单

前 7 个字段是可见的接下来的 7 个字段是基于在 div 中单击按钮来切换的,现在总共有7 个字段'required'。前 7 个(可见部分)中的 3 个和切换 div 中的 4 个

问题是,当切换 div 可见时,如果我错过了 7 个字段中的任何一个,JQuery验证插件会显示所需的消息,但是当 div是隐藏的。这是正常情况

即使表单的一部分隐藏如何进行完整表单的验证 现在如果我删除文本框地址 1的值并隐藏地址部分并单击保存它不会提示地址 1所需的东西,即使我保持“必需” 这是条件2

4

1 回答 1

11

可能的原因可能是文件中有ignore: ':hidden'jquery.validate.unobtrusive.js。只需删除该行。

在 1.9.0 版本之后,这是默认行为。如果文件中不存在该行(我不确定),您可以通过添加手动修复该行

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

正如你在这里看到的

另一个更改应该使带有隐藏元素的表单的设置更容易,这些现在默认情况下被忽略(选项“ignore”现在默认为“:hidden”)。从理论上讲,这可能会破坏现有设置。在不太可能的情况下,您可以通过将忽略选项设置为“[]”(不带引号的方括号)来修复它。

于 2012-04-18T06:32:55.023 回答