2009-10-13 3 views
2

У меня есть следующий код, связанный с событием нажатия кнопки:JQuery форма плагин ajaxSubmit время обратного вызова

function submitForm() { 

    var $submitOK = false; 
    $('#form1').ajaxSubmit({ 
     beforeSubmit: function() { 
      $submitOK = $('#form1').valid(); 
      return $submitOK; 
     }, 
     success: function(html, status) { 
      $("#response").text(html.substring(1, html.length - 1));    
     } 
    }); 

    if ($submitOK) { 
     processForm1(); 
    } 

    return $submitOK; 
} 

Каким образом сроков ajaxSubmit и обратным вызова beforeSubmit играть - будут обратный вызов beforeSubmit всегда возврат перед выполнением возвращается из ajaxSubmit()?

Код ведет себя по желанию - возвращает $ submitOK, равный результату $ ('# form1'). Valid(), но я хотел убедиться, что это детерминированное поведение.

Спасибо.

ответ

1

Да, beforeSubmit всегда будет возвращаться во-первых, это его цель - это крюк предварительной подачи.

+0

Спасибо, я догадался. Я знал, что представление ajax не произойдет, если beforeSubmit возвращает false, просто хотел подтвердить, что код, следующий за ajaxSubmit, также не будет достигнут, пока не вернется обратный вызов beforeSubmit. – TonE