1

この質問を読みましたが、 success:functionのためあまり役に立ちませんでした。Ajax レスポンスの完了を理解していません。特定のイベントに Ajax stop を使用する方法を知っている人はいますか?

詳細: リクエストを送信する Ajax コードがあり、レスポンスを受け取ったときに何かを実行したいと考えています。私は次の関数でそれを行いますが、Ajax のすべてのドキュメントを取得し、Ajax をページに追加できません。

$(document).ajaxStop(function() {
                ....;
                alert("start");
});
4

1 に答える 1

0

ajaxStopグローバルな AJAX 補完動作に使用するためのものです。おそらく、通常のcompleteハンドラーを使用する必要があります。

$.ajax({
  url: "some/path.php",
  complete: function() { alert("start"); }
});

alwaysまたは、代わりにpromise メソッドを使用できます。

$.ajax({
  url: "http://fiddle.jshell.net/favicon.png",
}).always(function() {
  alert("start");
});

アップデート:

以下のコメントを見ると、実際に成功を使用したい場合があります (特に、に興味がある場合response:

$.ajax({
  url: "some/path.php",
  success: function(response) { alert(response); }
});

doneまたは、代わりにpromise メソッドを使用できます。

$.ajax({
  url: "http://fiddle.jshell.net/favicon.png",
}).done(function(response) {
  alert(response);
});

ただし、これらのメソッドはどちらも、サーバーから正常な応答 (ステータス コード 200) を受信した場合にのみ実行されることに注意してください。

于 2013-04-09T20:13:39.563 に答える