【问题标题】:jquery validate change error messages on invalidHandlerjquery 在 invalidHandler 上验证更改错误消息
【发布时间】:2015-07-02 02:50:29
【问题描述】:

我看到了有关 invalidHandler on the website 的 jquery validate 插件的文档。我希望能够执行以下操作?

jQuery.validator.setDefaults({
  invalidHandler: function(event, validator) {
    var errors = validator.numberOfInvalids();
    if (errors) {
     for (var i = 0, len = errors.length; i < len; i++) {
         errors[i].text = //replace special characters in message (if any) and replace with something else)
      } 
    }

    //update list of changed error messages back to validator, so new error messages show
  }
});

我正在尝试这样做,因为我正在尝试在全球范围内这样做。基本上,我正在尝试将更简单的标记转换为超链接,并希望能够在全球范围内做到这一点。

这可能吗?

【问题讨论】:

  • 也许,也许不是。为什么不简单地尝试一下?
  • FWIW,如果您使用的是不显眼的验证插件,那么您不能使用 .validate() 方法,因为不显眼的构造会自动进行。然后,您只能使用 the .setDefaults() method 设置选项。
  • @Sparky 我知道如何在 jquery 中进行字符串替换,但我不知道如何更新原始列表。通常,这些组件会为您提供“读取”副本,而不是“可编辑”错误副本。

标签: jquery asp.net asp.net-mvc jquery-validate


【解决方案1】:

您可以像这样将验证设置应用于选择器:

var valSettings = $.data($('form')[0], 'validator').settings;
valSettings.invalidHandler: function(event, validator) {
    // do something
}

如果您希望整个插件真正全局化,请使用jQuery.validator.setDefaults()

jQuery.validator.setDefaults({
    invalidHandler: function(event, validator) {
        // do something
    }
});

【讨论】:

  • 我的问题更多是关于如何修改和更新 UI 中显示的消息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多