2011-01-18 8 views
0

ajax経由でサーバーから来るものはすべてキャッチできますか? ajaxComplete()はいくつかのAjax作業が完了したときに起動することがわかりますajaxリクエストから来るデータには何もしないでください

私はしたいと思います。

alert(whichever content came from the server as a result for $.ajax, $.post, $.get) 
+2

ここまでお試しいただいたことはありますか? jQueryのマニュアルでも、あなたが望むものを正確に実行するサンプルが表示されます。 –

+0

@nickあなたは私にこれを見せてもらえますか – Omu

+0

@Omuあなたは深刻ではありませんか? http://api.jquery.com/jQuery.ajax/、「成功」コールバックの説明を参照してください。 –

答えて

3

jQuery.ajaxCompleteはうまくいくはずです。

$(document).ajaxComplete(function(event, XHR, ajaxOptions) { 
    var resp = XHR.responseText 
       ? XHR.responseText 
       : (XHR.responseHTML 
        ? XHR.responseHTML 
        : XHR.responseXML); 
    alert(resp); 
}); 

ドキュメントが応答がXHR.responseHTMLまたはXHR.responseXMLになることを言いますが、私は私の経験的なテストが存在する二つのメンバーがXHR.responseTextXHR.responseHTMLであることを示しているので、後者は、タイプミスかもしれないと思います。

しかし、私のテストは網羅的ではなく、サーバーから返されたMIMEタイプを考慮していなかったので、恐ろしく間違っているかもしれないので、私の言葉を取ってはいけません。

また、この例では返されるステータスコードを無視していますが、これは単なる良い例ではありません。

ugly running demo

+0

@nickこれを試してみましたが、それは私には未定義です。いつも – Omu

+0

@Omu:更新を参照してください。 –

関連する問題