0

我有一个要与 jQuery 不显眼验证一起使用的表单。一切正常。

但我在该视图上还有其他表单,例如搜索表单、登录表单等,并且插件也附加到所有这些表单,我不想要这个

如何明确说明插件应附加到哪些表单,哪些不附加?

4

2 回答 2

2

我认为你有两个选择,因为这个选项不是开箱即用的。

  1. 编辑不显眼插件的源代码
  2. 在您不想验证的表单上取消绑定验证器。

我会选择 1。虽然我记得在 SO 上看到过一些关于它的东西,但我不能 100% 确定你会如何做 2。

因此,如果您查看第 203 行附近的(未缩小的)jquery.validate.unobtrusive.js 文件,您会看到:

var $forms = $(selector)
    .parents("form")
    .andSelf()
    .add($(selector).find("form"))
    .filter("form");

我会将其更改为

var $forms = $(selector)
    .parents("form.include")
    .andSelf()
    .add($(selector).find("form.include"))
    .filter("form.include");

所以这只会验证带有“包含”类的表单

于 2013-04-13T16:43:05.023 回答
0

您可以使用以下方法销毁特定​​表单的验证器实例

$("#[form_Id]").data("validator").destroy();

https://jqueryvalidation.org/Validator.destroy/

于 2021-01-22T10:22:11.737 回答