来自元素属性的自定义错误消息:jQuery Validate Plugin

时间:2015-01-15 12:11:27

标签: javascript jquery html jquery-validate

我们正在使用jQuery Validate Plugin进行所有客户端验证。

到目前为止,我们对所有required字段使用默认错误消息(即“此字段是必需的”),但现在我们需要将其更改为字段特定的错误消息。例如,如果用户未输入名字,则该消息应显示为Please enter first name,依此类推。

这些是我们尝试过的可能性:

  1. 使用HTML 5属性data-rule-required="true"data-msg-required="Madam/sir, this field is required."。由于一些其他限制,我们必须避免使用HTML 5属性。

  2. 在验证表单时提供messages个对象: messages: { username: {required: "Please enter Username",email: "Enter valid Email"}, password: "Please enter Password" }, 这种方法的缺点是我们需要修改html和javascipt文件,并且字段名必须同步以便插件的正确功能。

  3. 我正在寻找类似于HTML 5属性的解决方案 - 我可以在其中为输入字段指定自定义属性,插件将从该字段本身获取消息。 像这样:

    <input type="text" required errorMessageCustomAttr="Please enter first name" />
    

    我已提到相关的SO问题,但无法找到任何解决方案。有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:1)

引用OP

  

&#34;我正在寻找类似于HTML 5属性的解决方案 - 我可以在其中为输入字段指定自定义属性,插件将从该字段本身获取消息。&# 34;

答案是&#34; no&#34;,这不是插件的选项。

您可以将HTML5属性用于自定义消息。由于jQuery Validate插件动态禁用了HTML5验证,因此HTML5数据属性只是一个自定义属性。