2016-03-08 107 views
0

我有一個ajax調用它用於執行任務,並相應地更新與進度狀態的表。現在我有另一個Ajax調用來從表中獲取狀態顯示任務進度狀態給用戶。第二個調用每2秒重複調用一次,直到任務完成。但是由於第二個ajax調用一直加載,直到第一個響應結束,我無法向用戶顯示任務進度狀態阿賈克斯呼籲。獲取第二個AJAX調用響應之前的AJAX調用

我在下面的鏈接的stackoverflow中發現了一個類似的問題,並且提示它可能是由於會話鎖定,並且使用session_write_close()可能會工作。我嘗試了它,結果沒有成功。 Prevent jQuery AJAX call from waiting for previous call to complete

即使第一個ajax調用仍在處理中,是否有辦法獲得第二個ajax調用的響應?

+0

郵政相關的代碼。 –

+0

這聽起來像是服務器端問題。 – iautomation

+0

使用async:true; – madalinivascu

回答

0

您可以控制器在Ajax函數流使用jQuery的推遲概念像

var defered = jQuery.Deferred(); 

function your_function(){ 
//do something! 
defered.reslove() 
return defered.promise 
} 
your_function.then(function(){ 
//this will not run till your_function is done 
}) 

這裏學到更多的https://api.jquery.com/jQuery.Deferred/

+0

但我需要第二個Ajax調用每2秒調用來獲取表更新..可以用延期完成? – Geethanjali

相關問題