2015-06-01 27 views
12

Bir işlem yapmak ve aynı anda HTML5 ve JavaScript'teki ilerlemeyi göstermek istiyorum. Ben IE 8 kullandığım için <progress> eleman desteklenmez, böyle bir jQuery AJAX yöntemi kullanıyor düşünce yaklaşımı:jquery ajax 0 birden kullanarak çoklu işlem

$(document).ready(function(){ 
    $("button").click(function(){ 
     $.ajax({ 
      url: "Perform a server side operation", 
      success: function(result){ 
       ProgressBarUpdate(20); 
      } 
     }); 
    }); 
}); 

var ProgressBarUpdate = function(value) { 
    value = value + 10; 
    $("#id").css("width", value +"%"); 
} 

<div class="progress-bar" role="progressbar" id="id" aria-valuemin="0" aria-valuemax="100"> 
    <span class="sr-only">Complete</span> 
</div> 
Ama burada konu operasyonu ve güncelleştirme gerçekleştirmek için nasıl ilerleme çubuğu aynı anda mı? Çünkü AJAX isteğinin success: kısmına geldikten sonra, 100% ilerlemesinin doğrudan gösterilmesi anlamlı değildir. Bunun için başka bir yaklaşım var mı?

+1

socket.io nelerdir? Eğer herhangi bir dosya yüklüyorsanız '$ .ajaxSettings.xhr(). upload();' uplaoding yüzdesini –

+0

elde edebilirim. Projemde de aynısını yapmak istedim.Ama ajax çağrısı olduğu için bu mümkün değil. ve gerçek anlamda ilerlemesini alamıyorsunuz.Bir ilerleme çubuğu sahte (yanılsama) yapabilirsiniz ama bu gerçek ilerleme değil :( – AkshayJ

+0

Ben – user1400915

cevap

3

İşlemin sunucu tarafında gerçekleştiğini varsayarsak, iki yaklaşım biliyorum.

Yoklama Bu

setInterval(function(){ 
    $.ajax("checkprogress.url", function(data){ 
     $('.progress-bar').val(data); 
}, 1000); 

Temelde farklı bir ajax ile gerçekleşecek

, bir sunucu tarafı servisi/script/kod her aralığını anket olacaktır ve tepki akım ilerlemeyi içerecektir . Ardından ilerleme çubuğunu güncelleyeceksiniz.

WebSockets

başka bir yaklaşım itme içerik için izin (gelismelerle) ve/veya gerçek zamanlı olarak conected müşterilerine bir remote procedure call uygulayacak bir web-soket çerçevesini kullanmaktır.

İki tür çerçeveler SignalR ve sunucu tarafında ne yapıyorsun eylem

İlgili konular