【问题标题】:jquery validate plugin override error message for required:jquery validate plugin override 所需的错误消息:
【发布时间】:2013-08-23 21:39:06
【问题描述】:

所以我一直在尝试对所有具有“必需”类的字段进行全局覆盖。我明白了,所以我可以为任何未通过所需类验证的字段添加红色背景,如下所示:

$("#signup_form").validate({
    errorClass: "validateError"
});

我已经尝试使用 errorPlacement: 函数,就像其他人提到的那样删除错误参数:

$("#signup_form").validate({
    errorClass: "validateError"
    errorPlacement: function (error, elemenet) {
       error.remove();
    },
});

这只会完全终止验证。

一个论坛提到我需要指定验证可能期望的每个字段,并将默认的“必需”消息覆盖为消息中的任何内容:函数。我如何在全局范围内设置它,因为此设置需要是动态的,以预测任何需要设置类的字段?

非常感谢

【问题讨论】:

  • 你想多了。默认情况下,插件将类 error 添加到任何有错误的元素。就是这么简单。只需适当地定位您的 CSS。
  • 这最终成为解决方案的一部分。另一个问题是“必需”的默认消息,我试图全局删除它,但仍然使用错误类来控制背景颜色。
  • 查看下面的完整答案。

标签: jquery jquery-validate overriding


【解决方案1】:

要对存在验证错误的元素进行样式设置,您只需将默认类作为 CSS 错误的目标。默认类是error

.error {
    background-color: #ff0000;
}

或者更具体地说:

input.error {
    background-color: #ff0000;
}

要全局更改此插件的验证错误消息,请使用:

jQuery.extend(jQuery.validator.messages, {
    required: "your message here"
});

参考:https://stackoverflow.com/a/2457053/594235


要完全删除所有错误消息,只需在errorPlacement 回调函数中放置一个return false;

errorPlacement: function () {
    return false;
}

演示http://jsfiddle.net/eP5HF/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多