来自元素属性的自定义错误消息:jQuery 验证插件
Custom error message from element's attribute : jQuery Validate Plugin
我们正在使用 jQuery Validate Plugin 进行所有客户端验证。
到目前为止,我们对所有 required
字段(即 'This field is required')使用默认错误消息,但现在我们需要将其更改为特定于字段的错误消息。例如,如果用户没有输入名字,则消息应显示为 Please enter first name
等等。
这些是我们尝试过的可能性:
使用 HTML 5 个属性 data-rule-required="true"
和 data-msg-required="Madam/sir, this field is required."
。由于其他一些限制,我们必须避免使用 HTML 5 个属性。
在验证表单时提供 messages
对象:
messages: {
username: {required: "Please enter Username",email: "Enter valid Email"},
password: "Please enter Password"
},
这种方法的缺点是我们需要同时修改 html 和 javascipt 文件,并且字段名称必须同步才能使插件正常运行。
我正在寻找与 HTML 5 属性类似的解决方案 - 我可以在其中为输入字段指定自定义属性,插件将从该字段本身获取消息。
像这样:
<input type="text" required errorMessageCustomAttr="Please enter first name" />
我已经参考了相关的SO问题,但找不到任何解决方案。有什么办法可以实现吗?
引用OP:
"I am looking for a similar solution to that of HTML 5 attributes - where I can specify a custom attribute to my input fields, the plugin will pick up the message from that field itself."
答案是"no",这不是插件的选项。
您将为自定义消息使用 HTML5 属性。由于 HTML5 验证被 jQuery 验证插件动态禁用,因此 HTML5 数据属性简单地成为自定义属性。
我们正在使用 jQuery Validate Plugin 进行所有客户端验证。
到目前为止,我们对所有 required
字段(即 'This field is required')使用默认错误消息,但现在我们需要将其更改为特定于字段的错误消息。例如,如果用户没有输入名字,则消息应显示为 Please enter first name
等等。
这些是我们尝试过的可能性:
使用 HTML 5 个属性
data-rule-required="true"
和data-msg-required="Madam/sir, this field is required."
。由于其他一些限制,我们必须避免使用 HTML 5 个属性。在验证表单时提供
messages
对象:messages: { username: {required: "Please enter Username",email: "Enter valid Email"}, password: "Please enter Password" },
这种方法的缺点是我们需要同时修改 html 和 javascipt 文件,并且字段名称必须同步才能使插件正常运行。
我正在寻找与 HTML 5 属性类似的解决方案 - 我可以在其中为输入字段指定自定义属性,插件将从该字段本身获取消息。 像这样:
<input type="text" required errorMessageCustomAttr="Please enter first name" />
我已经参考了相关的SO问题,但找不到任何解决方案。有什么办法可以实现吗?
引用OP:
"I am looking for a similar solution to that of HTML 5 attributes - where I can specify a custom attribute to my input fields, the plugin will pick up the message from that field itself."
答案是"no",这不是插件的选项。
您将为自定义消息使用 HTML5 属性。由于 HTML5 验证被 jQuery 验证插件动态禁用,因此 HTML5 数据属性简单地成为自定义属性。