我想使用jquery验证插件添加自定义错误替换(http://jqueryvalidation.org/documentation/)我想自定义错误替换,如点击此处
$(function() {
//simple example 1
//click event for first button
$("#form1").validate({
errorPlacement: function(error, element) {
if (element.attr("name") == "business_email" ) {
$("#bus_email").css('color',"#f42156");
$("#busp_email").removeClass("field_validation_error hidden");
$("#busp_email").addClass("field_validation_error");
}
},
rules: {
business_email: "required"
},
messages: {
business_email: "Please enter your firstname"
}
});
});
答案 0 :(得分:1)
使用此代码,您可以获得自定义替换消息并对 #bus_email 采取行动:
$(function() {
//simple example 1
//click event for first button
$("#form1").validate({
rules: {
business_email: "required"
},
messages: {
business_email: "Please enter your firstname"
},
errorPlacement: function(error, element) {
if (element.attr("name") == "business_email") {
$("#bus_email").css('color',"#f42156");
$("#busp_email").removeClass("hidden");
$("#busp_email").html(error);
} else {
$("#busp_email").addClass("hidden");
$("#busp_email").html();
error.insertAfter(element);
}
}
});
});
答案 1 :(得分:0)
在你的JSFiddle中,正在调用errorPlacement
函数并且jQueryVal正常工作。
然而,
您的#busp_email
已显示但为空。
您的脚本逻辑不正确。为什么要删除一个类,然后在它之后添加这个类?为什么不隐藏它?
您不需要检查errorPlacement
中的每个值。它不是如何运作的。您不应该在预定义的错误框中为每个input
定义错误放置 - 您应该通过在input
之后或在指定位置创建动态错误消息来定义公共放置逻辑;或者通过在指定的警报中附加错误;但绝对不是通过检查每件物品。
为什么默认验证错误放置不适合您?你想改变什么?描述一下,我会尽力帮助您 - 现在您只需提供无效代码而无需任何解释。