【问题标题】:Jquery validation in hidden 'div'隐藏的'div'中的Jquery验证
【发布时间】:2012-04-18 06:31:05
【问题描述】:

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

前 7 个字段可见,后 7 个字段根据 div 中的按钮单击切换现在总共有 7 个字段 是'必需'。 3 来自前 7 个(可见部分)和 4 个来自切换 div。

问题是,当切换 div 可见时,如果我 错过 7 个字段中的任何一个,JQuery 的验证插件会显示所需的消息,但同一个插件只检查 3 字段(在 form 的可见部分中)当 div 隐藏时。

即使表单的一部分隐藏,如何进行完整表单的验证 现在,如果我删除文本框 Address 1 的值并隐藏 Address Part 并单击 SAVE 它不会提示输入 required 地址 1 的东西,即使我保留它 '必需'

【问题讨论】:

  • 输入是如何隐藏的?当元素被隐藏时,你确定元素存在吗?

标签: jquery html validation jquery-plugins jquery-validate


【解决方案1】:

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

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

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

如你所见here

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

【讨论】:

  • 很好,它开始工作了,但我怎样才能让隐藏的 div 可见。我的意思是现在表单没有提交,因为值未填充但 div 处于隐藏状态。
  • 您可以在抛出验证错误时以编程方式显示隐藏的 div。
猜你喜欢
  • 2012-02-08
  • 1970-01-01
  • 1970-01-01
  • 2012-12-06
  • 1970-01-01
  • 1970-01-01
  • 2017-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多