ホームページ > ウェブフロントエンド > jsチュートリアル > 200 OK 応答があるにもかかわらず、jQuery Ajax 成功イベントが失敗するのはなぜですか?

200 OK 応答があるにもかかわらず、jQuery Ajax 成功イベントが失敗するのはなぜですか?

Mary-Kate Olsen
リリース: 2024-12-02 06:26:08
オリジナル
676 人が閲覧しました

Why is My jQuery Ajax Success Event Failing Despite a 200 OK Response?

jQuery Ajax 成功イベントが 200 OK 応答にもかかわらず失敗する

jQuery の Ajax リクエスト メカニズムは通常、指定された dataType パラメータまたはサーバーから受信した Content-Type ヘッダー。ただし、この変換プロセスで無効な JSON データや XML データなどのエラーが発生した場合、jQuery はエラー イベントを実行します。

問題の調査

この特定のシナリオでは、提供されているjQuery コードは dataType: "json" を定義し、応答が JSON 形式であることを期待していることを示します。ただし、JqueryOperation.aspx のサーバー側コードは、ステータス 200 OK のプレーン HTML スニペットを出力します。この不一致により、jQuery が有効な JSON として応答を解析できなくなり、エラー コールバックがトリガーされます。

解決策

この問題を解決するには、jQuery が解釈できないようにします。応答は JSON として返されます。これを行うには、jQuery コードから dataType パラメーターを削除します。さらに、JqueryOperation.aspx のサーバー側コードを変更して次を返します:

Content-Type: application/javascript

alert("Record Deleted");
ログイン後にコピー

または、より堅牢なアプローチとして、JSON 応答を返し、成功コールバック内でメッセージを表示することを検討してください:

Content-Type: application/json

{"message": "Record deleted"}
ログイン後にコピー

以上が200 OK 応答があるにもかかわらず、jQuery Ajax 成功イベントが失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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