2016-11-16 18 views
-1

forループでajax呼び出しと一緒にajaxローダーを正しく表示および非表示にする方法。Ajax forループを呼び出す

$scope.upload = function(){ 
    $(".loader").show(); 
    for(var i=0;i<count ;i++){ 
    $.ajax({ 
       type: "POST", 
       url: "/upload", 
       data: data; 
       contentType : 'multipart/form-data', 
       success: function(msg){ 

       }); 
       } 
      }); 
} 

}

+0

varibaleのflagCounterを作成し、counterFlagをインクリメントAJAXの要求が完了した後、その数が要求の数と等しければチェックし、ローダーを非表示にする –

答えて

0

一つのオプションは、すべてのAJAX呼び出しが行われたときにチェックすることです:

$scope.upload = function(){ 
    $(".loader").show(); 
    var calls = []; 
    for(var i=0;i<count ;i++){ 
    calls[i] = $.ajax({ 
        type: "POST", 
        url: "/upload", 
        data: data; 
        contentType : 'multipart/form-data', 
        success: function(msg){ 

        }); 

      }); 
    } 
    Promisse.all(calls).then(function(data){ 
     $(".loader").hide(); 
    }); 
} 
0

このようにしてみてください。

$(".loader").show(); 
var counterFlag =0; 
for (var i = 0; i < count; i++){ 
    $.ajax({ 
      //ajax options 
      success: function(msg){ 

      }, 
      complete:function(d){ 
       counterFlag++; 
       if(counterFlag==count) 
       { 
        $(".loader").hide(); 
       } 
      }); 
    } 
    } 
+0

台のローダーが作動していますが、それでもまだ突っ込んでいます... –

+0

ローダーは隠れていませんか? –

+0

隠れていますが...回転ローラーイメージが回転運動しています。循環回転がつまっています –

関連する問題