1

AJAX と Jquery を使用して内部的にデータを送信する PHP ページを作成しました。正常に動作しますが、送信後、もう一度送信をクリックすると(2回目)、送信されません..参照用のコードは次のとおりです

$(function(){
    $('#sub').click(function(){
        $('#myForm').on('submit',function(e){
            e.preventDefault();
            $.ajax({
                url:"file.php",
                type:'POST',
                data:new FormData(this),
                contentType: false,
                processData:false,
                success:function(data){
                    $("#myResponse").replaceWith(data);}
                });
            });
        });
    });
});

これは、からの送信ボタンです。

<input type="submit" value="Submit" name="submit" id="sub" onclick="submitForm('file.php')" data-toggle="modal" data-target="#myModal">
4

2 に答える 2

2

入力タイプから (onclick="submitForm('file.php')") を削除します。また、「$('#sub').click(function(){});」も削除します。. 次のようにしてください:

  $('#myForm').on('submit',function(e){
   e.preventDefault();
   $.ajax({
   url:"file.php",
   type:'POST',
  data:new FormData(this),
  contentType: false,
  processData:false,
  success:function(data){
  $("#myResponse").replaceWith(data);}
    });
   });
  });
于 2016-12-16T08:06:04.697 に答える
0

他のクリック イベントを削除し、送信イベントを委任します

$('body').on('submit','#myForm', function(e) {
  e.preventDefault();
  $.ajax({
    url: "file.php",
    type: 'POST',
    data: new FormData(this),
    contentType: false,
    processData: false,
    success: function(data) {
      $("#myResponse").replaceWith(data);
    }
  });
});
于 2016-12-16T08:03:04.443 に答える