[英]How to customize error message using jQuery.validator placeholders?
我正在尝试添加自定义表单验证器。 而且我遇到了消息自定义问题。
假设我要检查字段值是否未超过最大允许值。 我知道“验证插件”已经具有“最大”验证器-这仅用于示例:
$.validator.addMethod("max-numeric", function(value, element, param) {
var maxValue = $(element).attr("data-max");
return (!maxValue) || maxValue >= value;
}, $.validator.format('Applicants must be older than {0} and younger than {1} years of age'));
$("#data-form").validate({
rules: {
"form.params1.p4":
{
"min-numeric": [5, 6]
}
}
});
我无法理解是什么负责替换$ .validator.format中的{0}和{1}。 以及如何传递这些参数?
更新:
这是我收到的消息:
申请人必须大于真实年龄且小于[object HTMLInputElement]岁
我无法理解是什么负责替换
'$.validator.format'
{0}
和{1}
。 以及如何传递这些参数?
在上面的示例中, {0}
代表第一个参数, {1}
代表第二个参数。 参数分别为[5, 6]
,消息中的此类自动替换由插件自动处理。
因此,编写自定义方法时,您不需要做任何特别的事情。 如果您将三个参数传递给方法...
customMethod: [34, 50, 10]
...那么您将获得{0}
, {1}
和{2}
的自定义消息,分别代表参数的每个值。
它只是工作。
如果出了什么问题,除了以下几点,从您的OP中看不出来:
该方法称为
max-numeric
,但是您要在.validate()
方法的rules对象中引用min-numeric
。
只要在max-numeric
旁边有两个参数,您的示例就可以工作。
max-numeric: [5, 6]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.