2016-03-08 102 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

相关问题