-1

AJAX リクエストの処理が完了しておらず、サーバーから戻っていないときに読み込み中の画像を表示したいのですが、ステータスが完了していないときに ajax を処理するオプションはありますか

 jQuery.ajax({
            url: "/privileges/users/get-group-users",
            type: "POST",
            dataType: 'JSON',
            data: {
                "group_id":groupId
            },
            success: function(users){

            },
            error: function(e){

            }
        });

成功またはエラーのようなオプションはありますか???

4

4 に答える 4

2

使用ajaxStart - ajaxStop:

<img src="img/loading.gif" style="display:none;" id="loading"/>

JS:

// if there is any ajax call the loading image will be visible
$("#loading").ajaxStart(function(){
   $(this).show();
 });

//if the ajax call stoped hide the loading image
$("#loading").ajaxStop(function(){
   $(this).hide();
 });
于 2012-08-29T10:35:12.547 に答える
0

あなたが使用することができます:

$('#loading').ajaxStart(function() {
  $(this).show();
}).ajaxComplete(function() {
  $(this).hide();
});
于 2012-08-29T10:38:21.907 に答える
0

によって提供されるコールバックフックは次の$.ajax()とおりです。

beforeSendコールバックが呼び出されます。jqXHRオブジェクトと設定マップをパラメーターとして受け取ります。

error要求が失敗した場合、コールバックは登録されている順序で呼び出されます。それらは、jqXHR、エラータイプを示す文字列、および該当する場合は例外オブジェクトを受け取ります。一部の組み込みエラーでは、例外オブジェクトとして「abort」、「timeout」、「NoTransport」という文字列が提供されます。

dataFilterコールバックは、応答データを正常に受信するとすぐに呼び出されます。返されたデータとdataTypeの値を受け取り、成功に渡すために(変更された可能性のある)データを返す必要があります。

success次に、要求が成功すると、登録されている順序でコールバックが呼び出されます。返されたデータ、成功コードを含む文字列、およびjqXHRオブジェクトを受け取ります。

completeコールバックは、リクエストが終了すると、失敗したか成功したかにかかわらず、登録された順序で起動します。それらは、jqXHRオブジェクトと、成功またはエラーコードを含む文字列を受け取ります。

ソース:jQuery API

$ .ajax()に関するすべての詳細が詳細に示されています

于 2012-08-29T10:38:25.667 に答える
0

非同期AJAX リクエストを使用している限り、を呼び出すとすぐに暗黙的に進行中であり、または関数が呼び出されると$.ajax()終了します。successerror

最新の jQuery (つまり 1.5+) を使用する場合のより良いモデルは次のとおりです。

var jqXHR = $.ajax({ ... });    // don't put success and error in yet

var $splash = $(...).show();

jqXHR.always(function() {
    $splash.hide();
}).done(function(users) {
    ...
}).fail(function(e) {
    ...;
});
于 2012-08-29T10:35:01.697 に答える