以分块模式返回ajax响应

时间:2012-10-05 10:40:17

标签: html ajax jquery

我想制作一个用于处理服务器中某些数据的进度条。 我不想重新加载页面或转到另一个页面,所以我使用了ajax请求:

$.ajax({
    type: "POST", 
    url: "/process.php",
    dataType: "script",
    data: "foo=bar",
    success: function(data){

    }
});

此请求返回一些代码,如:

set_progress(50);

在chunked模式下一遍又一遍。 但是ajax等到请求完成然后返回响应数据! 这样就没用了:(

之后,我测试了另一种方式。 我使用iframe作为常规http表单。

<form action="/process.php" method="post" target="iframe" id="formid">
   <input type="hidden" name="foo" value="bar" />
</form>
<iframe name="iframe"></iframe>

甚至这种方法也行不通:((( 它将在请求结束时运行所有javascript代码而不是抛出请求!

我知道做这项工作的常规工作是将用户发送到另一个页面,然后发送分块数据,如:

<script type="text/javascript">setProgress(percent);</script>

但我不喜欢这种方式;) 有什么方法可以使这项工作?

0 个答案:

没有答案