在jquery验证中,错误消息很快消失

时间:2017-09-06 09:36:06

标签: jquery html

我尝试使用以下代码,但错误消息很快消失

var options = { /* your options*/};

$('#next').hammer(options).bind("swiperight", function() {
    var href = $(this).attr('href');
    $(window).location.replace(href);
});

4 个答案:

答案 0 :(得分:1)

使用preventDefault()方法停止发生元素的默认操作:

$(document).ready(function(){
  $('form').submit(function(e){
    if($("#first").val().match('^[a-zA-Z]{3,16}$')){
       alert("valid");
    }
    else{
      e.preventDefault();
      $("#error_msg").after("invalid");
    }
  })
})

答案 1 :(得分:1)

使用event.preventDefault()。如果调用此方法,则不会触发事件的默认操作。



$(document).ready(function() {
  $('form').submit(function(event) {
    if ($("#first").val().match('^[a-zA-Z]{3,16}$')) {
      alert("valid");
    } else {
       $("#error_msg").empty().text("invalid");
       alert("invalid");
      event.preventDefault();
    }
  })
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<input type="text" id="first">
<div id="error_msg"></div>
<button type="submit">submit</button>
</form>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

使用return false;

$(document).ready(function(){
  $('form').submit(function(e){
    if($("#first").val().match('^[a-zA-Z]{3,16}$')){
       alert("valid");
    }
    else{      
      $("#error_msg").after("invalid");
       return false;
    }
  })
})

答案 3 :(得分:0)

使用return falsepreventDefault()方法停止操作:

$(document).ready(function(){
  $('form').submit(function(e){
    if($("#first").val().match('^[a-zA-Z]{3,16}$')){
       alert("valid");
    }
    else{
      $("#error_msg").after("invalid");
      return false;
      //or
      e.preventDefault();
    }
  })
})