Jquery-ajax-events

提供:Dev Guides
移動先:案内検索

jQuery-ajaxイベント

Ajaxリクエストは、サブスクライブできるさまざまなイベントを生成します。 以下に、イベントの完全なリストと、それらがブロードキャストされる順序を示します。

イベントには2種類あります-

ローカルイベント

これらは、Ajaxリクエストオブジェクト内でサブスクライブできるコールバックです。

$.ajax({
   beforeSend: function(){
     //Handle the beforeSend event
   },
   complete: function(){
    //Handle the complete event
   }
  //......
});

グローバルイベント

これらのイベントはDOMのすべての要素にブロードキャストされ、リスンしている可能性のあるハンドラをトリガします。 次のようにこれらのイベントを聞くことができます-

$("#loading").bind("ajaxSend", function(){
   $(this).show();
}).bind("ajaxComplete", function(){
   $(this).hide();
});

特定のAjax要求に対して、グローバルオプションを渡すことで、グローバルイベントを無効にできます。

$.ajax({
   url: "testl",
   global: false,
  //...
});

イベント

Ajaxイベントの完全なリストを以下に示します。 ajaxStartおよびajaxStopイベントは、すべてのAjaxリクエストに一緒に関連するイベントです。

  • * ajaxStart(グローバルイベント)*このイベントは、Ajaxリクエストが開始され、他のAjaxリクエストが現在実行されていない場合にブロードキャストされます。
  • * beforeSend(ローカルイベント)* Ajaxリクエストが開始される前にトリガーされるこのイベントにより、XMLHttpRequestオブジェクトを変更できます(必要に応じて追加のヘッダーを設定します)。
  • * ajaxSend(グローバルイベント)*このグローバルイベントは、リクエストが実行される前にトリガーされます。
  • * success(ローカルイベント)*このイベントは、リクエストが成功した場合にのみ呼び出されます(サーバーからのエラーもデータのエラーもありません)。
  • * ajaxSuccess(グローバルイベント)*このイベントは、リクエストが成功した場合にのみ呼び出されます。
  • *エラー(ローカルイベント)*このイベントは、リクエストでエラーが発生した場合にのみ呼び出されます(リクエストでエラーコールバックと成功コールバックの両方を持つことはできません)。
  • * ajaxError(グローバルイベント)*このグローバルイベントは、ローカルエラーイベントと同じように動作します。
  • * complete(ローカルイベント)*このイベントは、リクエストが成功したかどうかに関係なく呼び出されます。 同期リクエストであっても、常に完全なコールバックを受け取ります。
  • * ajaxComplete(グローバルイベント)*このイベントはcompleteイベントと同じように動作し、Ajaxリクエストが完了するたびにトリガーされます。
  • * ajaxStop(グローバルイベント)*このグローバルイベントは、処理中のAjaxリクエストがなくなるとトリガーされます。