2016-07-27 9 views
1

私はこのコード部分をグローバルに表示して、ページ内の読み込みパネルを表示します。Ajaxアクションを開始するときに読み込みパネルを停止または非表示にします

$(document) 
.ajaxStart(function() { 
    $('#loadingPanel').fadeIn(); 
}) 
.ajaxStop(function() { 
    $('#loadingPanel').fadeOut(); 
}); 

だから、それは自動的に私はこのようなAJAXアクションを呼び出すことをいつでもロードパネルが表示されます:

$.ajax({ 
    type: "GET", 
    url: "localhost:8080/api/data/Test/GetData", 
    success: doSomething 
}); 

をしかし、単に特定のケースでは、私はロードパネルを表示しないようにしたいです。このコードアヤックスのアクション内

$('#loadingPanel').hide(); 

を呼び出すか、代わりに各AJAXアクションのフェードインとフェードアウトを呼び出すだけで、いくつかのAJAXアクションのためのローディングパネルを回避するための回避策がありますする方法はあります。

答えて

2

$.ajax(options)を呼び出すと、がトリガーされないように、オプションでglobal: falseを設定することができます。この要求のためにグローバルなAjaxの イベントハンドラをトリガするかどうか

global
。デフォルトはtrueです。 false〜 に設定すると、 ajaxStartまたは ajaxStopのようなグローバルハンドラがトリガされないようになります。 これは、さまざまなAjaxイベントを制御するために使用できます。

関連する問題