jQuery覆盖event.preventDefault()

Bar*_*ers 3 javascript jquery javascript-events preventdefault

我有一个表单,在提交时,通过通常的e.preventDefault()并发送一个ajax请求.但是,如果此ajax请求返回某个条件,我希望正常提交表单.我该如何实现这一目标?

// Submit handler
$(".reserveer_form").submit(function(event){
  event.preventDefault();

  $.ajax({
    url: $(this).attr("action"),
    data: $(this).serialize(),
    success: function(data) {
      if($(".messagered",data).length > 0){
        var errors = $(".messagered",data);
        $(".gegevens").before(errors);
      } else {
          // SUBMIT THE FORM!
      } 

    }
  });

})
Run Code Online (Sandbox Code Playgroud)

小智 6

submit在窗体上调用本机方法,以便它不会触发jQuery处理程序.

$.ajax({
    context: this, // <-- set the context.
    url: $(this).attr("action"),
    data: $(this).serialize(),
    success: function (data) {
        if ($(".messagered", data).length > 0) {
            var errors = $(".messagered", data);
            $(".gegevens").before(errors);
        } else {
            this.submit(); // <-- submit the form
        }
    }
});
Run Code Online (Sandbox Code Playgroud)