2016-08-19 12 views
-1

APIを複数回打つために複数のajaxリクエストを使用する必要があります。 これらのajaxの進捗状況をどのように設定できますか?すべての要求が完了してページが準備完了したら、[進行状況]の指示が完了します。私はajaxStart()とajaxComplete()関数を試しましたが、Ajaxが(;;)内でループされていない場合にのみ正常に動作しています。複数のループされたAjaxの進行状況

以下は私のコード

for(var j=0; j<datesForcomputation.length; j++) { 
    url = " some/url"; 
    $.ajax({ 
     url:url, 
     type: 'GET', 
     async: false, 
     cache: true, 
     success: function(response){ 
      // success block 

     },error: function(response){ 
      //error block 
      console.log("Errored for"+ url + "-" +response); 
     } 
    }); 
} 

すべてのヘルプですか?それとも何か別のアプローチですか? ありがとう!

+0

これまでに何を試しましたか? – Alex

+1

3分でページをレンダリングできますか?違反はありませんが、私はあなたのアプリケーションのユーザーになりたくありません...たくさん待っています – ADyson

+0

$(document).ajaxStart()と$(document).ajaxComplete()、ajax xhrは何も動作していません。しかし、ajaxStartのconsole.logは動作しています。 UI関連の更新や追加は、すべてのAjaxが完了した後に反映されます。要素の非表示や表示は機能しません。 –

答えて

1

進捗状況を示しますか? Ajaxからのデータがロードされるまで、何が起こっているのかをユーザーに知らせたいかもしれません。 Ajax呼び出しが発生する直前に表示されるはずのAjaxローダーイメージを使用し、JQueryを使用して非表示にします。 Ajaxが完了するまでに3分かかることが確実であれば、リクエストが処理中であることを示す正式なメッセージを表示し、3分後に変更を期待してください。ユーザーは、プロセスの進捗状況を監視することに関心がありません。ユーザーインターフェイス上で変更をレンダリングするのに3分かかります。それは?

+0

ajaxStart関数とComplete関数は、リクエストが(;;)でループされていない場合にのみ正常に機能します。 –

関連する問題