不能复现,但是经常点完确定之后,“手机号”input并不失去焦点,会不停的弹出alert

图片描述

$('.phone').blur(function(){
    
     var phone = $(".phone").val();
     var flag = false;
     var message = "";
     var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0-9]{1})|(15[0-4]{1})|(15[5-9]{1})|(18[0-9]{1}))+\d{8})$/;             
     if(phone == ''){
         message = "手机号码不能为空!";
     }else if(phone.length !=11){
         message = "请输入有效的手机号码!";
     }else if(!myreg.test(phone)){
         message = "请输入有效的手机号码!";
     }else{
             flag = true;
     }
     if(!flag){
    alert(message);
     }
})
阅读 2.6k
2 个回答

1.点完确定之后取消绑定在.phone上的事件
2.在点击确认的时候验证表单,不要给.phone绑定blur事件。

经测试,并不会出现你说的多次弹框问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题