2017-08-23 14 views
-2

編集:私は、私が今使っているものにAJAXコードを変更していると私はまた、私はできるだけ多くAJAXにまで読んだAJAX - フォーム送信、同じページ、PHP

私のコードではJQueryが含まれています私ができるように私はフラットアウト失敗している!

私のHTMLフォームは次のようになります。

<form action="match_details.php" method="post" id="match_details"> 
.... 
<button type="submit" form="match_details" name="match_details" class="w3-button w3-block w3-mam w3-section" title="Update Match Postcode">Update</button> 
      </form> 

スタックから私はこのAJAXを得ることができました:

<script type="text/javascript"> 
$(function(){ 
    $('button[type=submit]').click(function(e){ 

    e.preventDefault(); 

     $.ajax({ 
      type: "POST", 
      url: "match_details.php", 
      data: $("#match_details").serialize(), 
      beforeSend: function(){ 
       $('#result'); 
      }, 
      success: function(data){ 
       $('#result').html(data); 
      } 
     }); 
    }); 
}); 
</script> 

私は再び入力へのボタンから、それを変更しようとしたとしましたが、何も変わっていないようです。フォームは依然として送信されますが、AJAXは無視され、ページが更新されます。

+0

変更 'タイプが=タイプ=「ボタン」' – j08691

+0

が、私はこれを試してみましたが、それはどんな違いがありませんでしたありがとうござい 'に'「送信」:( –

+0

それだけです 1つの問題。もう1つは '$(" myform ")' – j08691

答えて

2

JSがフォームを送信しないようにする必要があります。間違ったフォームIDを使用しています。また、コメントで判断すると、jqueryを含める必要があります。あなたのHTMLファイルの先頭で

<head>間および</head>またはちょうど終了</body>タグの前に、あなたは以下を使用することができます。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 

照会ないことをお勧めしていますけれども、次のコードは、(あなたを助けるかもしれませんあなたのAJAXリクエストから発すると同じページ):

<script type="text/javascript"> 
$(function(){ 
    $('button[type=submit]').click(function(e){ 

    e.preventDefault(); 

     $.ajax({ 
      type: "POST", 
      url: "match_details.php", 
      data: $("#match_details").serialize(), 
      beforeSend: function(){ 
       $('#result'); 
      }, 
      success: function(data){ 
       $('#result').html(data); 
      } 
     }); 
    }); 
}); 
</script> 
+0

これをありがとう、私はコードを試して、それは残念なことに、どちらも私の終わりにどこかに間違った何かを明らかに取得しているので、上記の提案をしなかった。 –

+0

コンソールログを開き、エラーを出力できますか? – Adam

+0

エラーはまったく見つかりません。これはすべて非常に奇妙です! –

関連する問題