2010-07-18 106 views
2

我已经创建了一个页面,我在其中使用PHP函数flush()将数据输出到浏览器,第二个数据被回显。我也使用jQuery的ajax函数调用这个页面。它的工作原理,但jQuery不会输出任何东西,直到整个页面已经执行,这种类型的删除flush()的功能。PHP flush与jQuerys ajax一起工作吗?

我该如何解决这个问题?

我的AJAX调用看起来是这样的:

jQuery.ajax({ 
     type: "get", 
     url: url, 
     data: postdata, 
     success: function(retval) { 
      jQuery('#retdiv").html(retval); 
     } 
}) 

回答

0

的jQuery需要等待连接关闭之前,它可以插入到HTML页面 - 它不能逐步显示出来(它不会有道理)。

+0

你能想出一个不同的方式来做到这一点吗? – MrAwesome 2010-07-18 17:46:17

+1

@MrAwesome你想完成什么? – quantumSoup 2010-07-18 17:48:09

+0

@MrAwesome:当然,只需发送你想发送的内容,但包括一个键或标记,并且只需结束脚本。然后客户端发回另一个请求(带有标记),并且后端脚本继续处理下一步。 – Jhong 2010-07-18 17:58:08

5

在这里,你有2个插件流:

JQUERY AJAX HTTP STREAMJSTREAMPLUG

http://plugins.jquery.com/taxonomy/term/1840

“这个插件允许与服务器保持的内容使用一个http请求的最新内容不断更新的持续连接,它扩展了$阿贾克斯,$不用彷徨和.post的$功能允许流式传输。“