2016-10-15 9 views
0

私はpreventDefaultでコードをサブミットしています。この私のコードpreventDefaultでサブミットに確認(yes no)を追加します。

//submit terima barang 
 
      $("form.form_terima").submit(function (event) { 
 
       if (confirm('Submit Terima Barang ?')) { 
 
        $(".loader").show(); 
 
        //disable tombol submit supaya tidak reload 
 
        event.preventDefault(); 
 
        var formData = new FormData($(this)[0]); 
 
        $.ajax({ 
 
         url: 'po_req/po_req_crud.php', //type='add_terima' 
 
         type: 'POST', 
 
         data: formData, 
 
         async: false, 
 
         cache: false, 
 
         contentType: false, 
 
         processData: false, 
 
         success: function (data) { 
 
          console.log(data); 
 
          //action if success 
 
         } 
 
        }); 
 
        return false; 
 
       } 
 
      });

しかし、それは働いていません。どのようにそれを解決するには?ありがとうございました:)

+0

どのくらい正確に動作していませんか? – adeneo

答えて

3

コードでは、event.preventDefault()は、ユーザーが「OK」/「はい」をクリックしたときにのみ実行されます。ユーザーが「いいえ」をクリックすると、フォームが送信されます。

ifブロックの外側にevent.preventDefault()を追加して、期待どおりに機能させる必要があります。

$("form.form_terima").submit(function (event) { 
    if (confirm('Submit Terima Barang ?')) { 
     $(".loader").show(); 
     //disable tombol submit supaya tidak reload 
     var formData = new FormData($(this)[0]); 
     $.ajax({ 
      url: 'po_req/po_req_crud.php', //type='add_terima' 
      type: 'POST', 
      data: formData, 
      async: false, 
      cache: false, 
      contentType: false, 
      processData: false, 
      success: function (data) { 
       console.log(data); 
       //action if success 
      } 
     }); 
    } 

    // prevent default regardless of user's response 
    event.preventDefault(); 
    return false; 
}); 
+0

ありがとうIblamefish、それは仕事です。私は 'submit 'を'

'#lolの中に入れて忘れてしまいました。また、 'if'の外側に置かれた' event.preventDefault(); 'は便利です。本当にありがとう –

関連する問題