使用带有百分比的进度条用于AJAX请求

时间:2009-04-28 11:16:07

标签: c# ajax asp.net-ajax

如何在页面上的每个AJAX请求中使用百分比的进度条? 我已经询问过如何使用一个进度条here加载整个页面 但是,现在我想知道是否可以在同一页面上为每个AJAX请求使用单独的进度条? 有什么想法吗?

感谢。

3 个答案:

答案 0 :(得分:1)

尝试以下演示

答案 1 :(得分:0)

再次不可能。根据W3C的说法,有5个州可以管理它。

  • 0 UninitializedReadyState
  • 1 OpenReadyState
  • 2 SentReadyState
  • 3 ReceivingReadyState
  • 4 LoadedReadyState

此外,Web服务器每1个请求只响应1次。因此,您无法从Web服务器发送进度状态。但是,您可以通过发送另一个请求来获取状态,例如ajax-upload。

答案 2 :(得分:0)

具有百分比的进度条在很大程度上取决于您的服务器环境。 %age不会作为正常HTTP请求过程的一部分返回,因此您需要同时轮询服务器以获取有关%age transfer过程的响应。

这就是上面的一些例子。其他似乎只是为了欺骗一个%的年龄?

显然,这需要能够提供此信息的服务器。您还通过使用连续请求来轮询服务器来添加负载 - 如果您有多个进度条,那么您正在讨论多个请求+多个轮询,这将导致相当大的额外负载。特别是因为浏览器中的同时HTTP连接受限制。

您还可以调查COMET类型的方法,它通过保持请求存活并以这种方式异步提供数据来执行各种操作。