如何将自定义消息添加到 jQuery 验证插件
How to add custom messages to jQuery validation plugin
我正在尝试为方法 "mustBeFigaro" 创建自定义消息。目前我收到的是电子邮件的默认消息,但不是我的促销代码自定义消息。
到目前为止,我已经能够更改插件代码中的现有消息,但无法添加新消息。
$(document).ready(function() {
$.validator.addMethod("mustBeFigaro", function(value, element) {
return (value.toLowerCase && (value.toLowerCase() === "figaro"));
},
"Please enter valid promo code."
);
$("#emailSubscription").validate({
ignore: ".ignore",
rules: {
email: {
required: true,
email: true
},
'entry.369082719': {
required: true,
mustBeFigaro:true
}
},
submitHandler: function(form){
$('#emailSubscription').toggle();
form.submit();
$('.hidden-message').show(500);
}
})
});
您发布的 JavaScript 代码没有任何问题,jQuery 验证插件工作正常。问题是您的自定义 CSS 将错误消息隐藏在第二个 input
元素下。所以我从你的 CSS 中删除了所有 position
属性,然后允许元素在插入错误消息时移开。
更改您的自定义函数,
return (value.toLowerCase && (value.toLowerCase() === "figaro"));
至,
return (value.toLowerCase && (value.toLowerCase() === "figaro") && value != "" );
我正在尝试为方法 "mustBeFigaro" 创建自定义消息。目前我收到的是电子邮件的默认消息,但不是我的促销代码自定义消息。
到目前为止,我已经能够更改插件代码中的现有消息,但无法添加新消息。
$(document).ready(function() {
$.validator.addMethod("mustBeFigaro", function(value, element) {
return (value.toLowerCase && (value.toLowerCase() === "figaro"));
},
"Please enter valid promo code."
);
$("#emailSubscription").validate({
ignore: ".ignore",
rules: {
email: {
required: true,
email: true
},
'entry.369082719': {
required: true,
mustBeFigaro:true
}
},
submitHandler: function(form){
$('#emailSubscription').toggle();
form.submit();
$('.hidden-message').show(500);
}
})
});
您发布的 JavaScript 代码没有任何问题,jQuery 验证插件工作正常。问题是您的自定义 CSS 将错误消息隐藏在第二个 input
元素下。所以我从你的 CSS 中删除了所有 position
属性,然后允许元素在插入错误消息时移开。
更改您的自定义函数,
return (value.toLowerCase && (value.toLowerCase() === "figaro"));
至,
return (value.toLowerCase && (value.toLowerCase() === "figaro") && value != "" );