2009-11-03 84 views
0

我希望在期间向客户端发送响应(想象一个文件上传或其他),并对客户端的响应做出响应。在一个Ajax请求上发送多个响应,并在客户端做出反应

  1. 发送Ajax请求
  2. 做大量的服务器端工作,在服务器端IST还在做大量的工作,发送有关信息到客户方
  3. 做客户方类似通知用户有关进度...

我希望这可以理解吗?

现在该怎么做?直到现在,我只能在ajax请求完成时作出反应。

回答

1

您可以尝试使用多个ajax请求,并使用您正在使用的框架提供的任何回调工具按顺序调用它们。例如(jQuery的):

function getData(){ 
    $.load(someUrl,onDataReceived) 
} 
function getMoreData(){ 
    $.load(someOtherUrl,onMoreDataReceived); 
} 
function onDataReceived(){ 
    // update your UI in a meaningful way so that the user knows things are happening 
    getMoreData(); 
} 
function onMoreDataReceived(){ 
    // update your UI again 
    alert('Got Everything'); 
} 
$(function(){ getData(); }); // start the process on page load 

我相信这是可能监听“事件进展”,但我认为这些都是限于之类的文件上传等

无论如何,祝你好运!

+0

您可能希望将getMoreData置于settimeout块中,否则将频繁轮询。 – 2009-11-03 15:25:48

相关问题