4

すべてのajaxリクエストで起動する関数を作成したいと思います。「読み込み中...」を表示するように。私はJqueryを使用していますが、それは可能ですか?

4

4 に答える 4

9

jQuery.activeアクティブなjQueryAJAX接続の数が含まれます。ただし、新しい接続の出現時にイベントを発生させるには、その変数を常にポーリングする必要があります。

とにかく、なぜこれを「読み込み中」のインジケーターに使用するのでしょうか。リクエストを行うときはいつでもインジケーターを設定するだけです。

于 2012-05-14T12:41:02.943 に答える
3

はい:

http://api.jquery.com/ajaxStart/

http://api.jquery.com/ajaxStop/

HTML:

<div id="loadingDiv">Loading ajax stuff...</div>

jQuery:

$('#loadingDiv')
.hide() 
.ajaxStart(function() {
    $(this).show();
})
.ajaxStop(function() {
    $(this).hide();
});
于 2012-05-14T12:39:31.677 に答える
3

はい、これは完全に可能です。ここでグローバルajaxハンドラーから始めますhttp://api.jquery.com/category/ajax/global-ajax-event-handlers/.ajaxStart()および.ajaxStop()イベントは、ステータスインジケーターを表示する可能性が最も高い候補です。

于 2012-05-14T12:39:43.727 に答える
1

前に述べたように、$。activeにはアクティブなjQueryAJAX接続の数が含まれています。$ .activeが0に達すると、すべてのAJAXがロードされます。したがって、bucleを設定して、すべての実行を待つことができます。私はここで解決策を見つけました、「etgregor」の答え

jQueryに保留中のAjaxリクエストがあるかどうかを知るにはどうすればよいですか?

于 2016-11-17T14:11:30.757 に答える