JQuery验证 - 在错误消息中显示字段名称

时间:2014-10-05 13:36:14

标签: jquery jquery-validate

显示错误消息时,JQuery validate插件使用{number}格式作为传递给规则的参数的占位符。 (例如this field must be between {0} and {1} characters

但是,我无法找到一种方法,使用$.validator.messages数组将字段名称传递给全局范围内的消息。

所以代替静态:

this field is required

我想传递类似的内容:

the {fieldname} field is required

在我的服务器端框架Laravel中,:attribute plcaheholder服务于此目的。 插件是否支持此功能?

2 个答案:

答案 0 :(得分:6)

您可以将函数作为消息值传递,如

$.validator.messages.required = function (param, input) {
    return 'The ' + input.name + ' field is required';
}

演示:Fiddle

答案 1 :(得分:0)

有很多方法可以使用JQuery Validate自定义错误消息。改变验证器原型是一种方法,但还有更多。哪个使用取决于您的最终目标。例如,您想要的粒度(请参阅下面的代码段)。

有关错误消息的具体文档,请访问:https://jqueryvalidation.org/reference/#link-error-messages

使用传递给validate()的options对象上的消息属性,可以完全控制每种类型的每个字段。以下是从https://jqueryvalidation.org/validate/复制的示例,其中包含两个验证规则的电子邮件字段:必填和电子邮件格式...

$("#myform").validate({
  rules: {
    name: "required",
    email: {
      required: true,
      email: true
    }
  },
  messages: {
    name: "Please specify your name",
    email: {
      required: "We need your email address to contact you",
      email: "Your email address must be in the format of  name@domain.com"
    }
  }
});