2017-12-18 11 views
-1

私はフォームからサーバーにデータを送信するためにAjaxを使用します。しかし、私は、フォーム内のデータを確認したいの前にアヤックスで提出:アヤックスでフォームを送信する前にチェックするAjax Djangoを使用する

<form id='#id_form' onsubmit='return checkInputSubmit();' > 
... 
</form> 

を:

$('#id_form').submit(function(e) { 
     e.preventDefault(); 

     $.ajax({ 
      type: 'POST', 
      url: url, 
      dataType: 'json', 
      data: $('#id_form').serialize(), // serializes the form's elements. 
      success: function(data) { 
       if(data.result == true) { 
        //My code 
       } 
       else { 
        //My code 
       } 
      } 
     }); 
    }); 

しかしcheckInputSubmit()は、Ajaxから提出防ぐことはできません。あなたは私のことを説明して、Ajaxが提出する前にフォームでデータをチェックするソリューションを教えてください。おかげさまで

+2

代わりに 'submit'ハンドラでチェックすることができます。 –

答えて

0

@Blurp、私はあなたの助けを借りて解決策を見つけました。

$('#id_form').validate({ 
    submitHandler: function(form) { 
     e.preventDefault(); 

     $.ajax({ 
      type: 'POST', 
      url: url, 
      dataType: 'json', 
      data: $('#id_form').serialize(), // serializes the form's elements. 
      success: function(data) { 
       if(data.result == true) { 
        //My code 
       } 
       else { 
        //My code 
       } 
      } 
     }); 
    } 
}); 
0

$('#id_form').submit(function(e)イベントでは、Ajaxを呼び出す前に任意のものをチェック/編集/返すことができます。 Ajaxの中では、うまくいかないと思います。 (私たちはちょうど入力ではなく、ajaxの結果をチェックします)

関連する問題