我正在Web应用程序中进行一些基本验证,该验证检查密码的值并确认密码字段是否匹配。如果不是,单击提交按钮时,我的代码会将两个类添加到两个字段,并显示一条错误消息。
$("#btn_register").click(function(e){
if( $("#confirmpassword").hasClass('has-error') && $("#password").hasClass('has-error') ){
e.preventDefault();
}
var pass1 = $("#password").val();
var pass2 = $("#confirmpassword").val();
if(pass1 != pass2){
$("#password").addClass('has-error');
$("#confirmpassword").addClass('has-error');
$("<p class='errorMsg'>The Password and confirm password fields do not match </p>").insertAfter("#confirmpassword");
return false;
}
});
问题是,如果多次单击提交按钮,则会多次添加使用insertAfter添加的消息。我在这里检查了类似的问题,并试图使其自己工作,但没有运气。
我想念什么?谢谢
最佳答案
做
if($("p.errorMsg").length==0)
$("<p class='errorMsg'>The Password and confirm password fields do not match </p>").insertAfter("#confirmpassword");
else
$("p.errorMsg").html(" Any other error if you want to display then set it as HTML ");
仅当
p
先前未插入时,才会插入。关于javascript - 多次停止触发jQuery insertAfter,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34319841/