ホームページ > バックエンド開発 > PHPチュートリアル > jQuery の $.load() でフォームをロードすると AJAX 投稿が失敗するのはなぜですか?

jQuery の $.load() でフォームをロードすると AJAX 投稿が失敗するのはなぜですか?

Patricia Arquette
リリース: 2024-12-09 19:07:19
オリジナル
236 人が閲覧しました

Why Does My AJAX Post Fail When Loading a Form with jQuery's $.load()?

ロードされたフォーム内での Ajax Post エラー

ボタンのクリックにより jQuery の $.load( を使用して外部フォームのロードがトリガーされるシナリオ) ) メソッドを使用すると、フォームがデータを投稿しようとすると問題が発生します。目的の PHP ファイルに転送される代わりに、ページは自動的にリロードされます。

AJAX の概要

ソリューションを詳しく調べる前に、AJAX の概念を理解することが重要です (非同期 JavaScript および XML)。 AJAX を使用すると、Web サイトはページ全体を更新せずにサーバーとデータを交換できます。

問題と解決策

ここでの問題は、AJAX の仕組みが理解されていないことに起因しています。 。このボタンは $.load() を使用して外部フォームの読み込みをトリガーしますが、これによって AJAX リクエストは確立されません。 AJAX 経由でデータを投稿するには、$.ajax() 関数を使用してフォームを送信する必要があります。

サンプル コード

次の修正されたコードを検討してください:

$('#Sel').change(function() {
    var opt = $(this).val();
    var someelse = 'Hello';
    var more_stuff = 'Goodbye';
    $.ajax({
        type: "POST",
        url: "receiving_file.php",
        data: 'selected_opt=' + opt + '&something_else=' +someelse+'&more_stuff='+more_stuff,
        success:function(data){
            alert('This was sent back: ' + data);
        }
    });
});
ログイン後にコピー

この修正されたコードでは、$.ajax() を使用してフォーム データが送信されます。スクリプトは、選択された値と追加パラメータを「receiving_file.php」に送信し、返されたデータをアラート ボックスに表示します。

以上がjQuery の $.load() でフォームをロードすると AJAX 投稿が失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート