ajaxComplete()

このエントリーをはてなブックマークに追加

ajaxComplete()はAjaxリクエストが完了した際に実行されるイベントを指定できるメソッドです。

$( document )に指定することによりjQueryで行なったAjax処理が完了した際に引数に指定したコールバック関数が実行されます。

グローバルイベントとして設定される為、スクリプト内のAjaxすべてに対して実行されます。

以下のサンプルではload()が完了した際にclass属性「log」がついた要素内のテキストをtext()を利用して書き換えています。

<div class="log"></div>
<div class="trigger">Trigger</div>
<div class="result"></div>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$( document ).ajaxComplete(function() {
  $( ".log" ).text( "Triggered ajaxComplete handler." );
});
$( ".trigger" ).click(function() {
  $( ".result" ).load( "/" );
});
</script>

sample

コールバック関数の引数では、第1引数でAjax Event、第2引数でjqXHRオブジェクト、第3引数でAjaxオプションを取得できます。

ajaxComplete()はグローバルイベントとして設定される為、スクリプト内のAjaxすべてに対して実行されますが、以下のように実行時のAjaxオプションを利用して特定のURLへのリクエストが完了した場合にのみ処理を実行するなどの制御が可能です。

$( document ).ajaxComplete(function( event, xhr, settings ) {
  if ( settings.url === "ajax/test.html" ) {
    $( ".log" ).text( "Triggered ajaxComplete handler. The result is " +
      xhr.responseText );
  }
});
jQuery 1.0.0での追加/変更

ajaxComplete()はjQuery 1.0で定義されたメソッドです。

参考URL

.ajaxComplete() | jQuery API Documentation

登録日 : 2014年07月13日 最終更新日 : 2014年8月5日

同じカテゴリー(Ajax)のエントリー

検索

スポンサードリンク

バージョン

リファレンス