如何显示进度条,如长请求的增量状态更新

时间:2012-09-28 12:39:47

标签: javascript asp.net c#-4.0

我必须在我的Asp.net应用程序中向服务器发送长时间请求,请求我调用4个服务,每个服务最多花费1分钟,所以我想显示prograssbar哪个服务已完成,我搜索了一个链接{{ 3}},关于我的概念是正确的,但是使用iframe加载另一个页面的页面写入方法如

protected void UpdateProgress(int PercentComplete, string Message)
{
  // Write out the parent script callback.
  Response.Write(String.Format(
    "<script>parent.UpdateProgress({0}, '{1}');</script>", 
    PercentComplete, Message));
  // To be sure the response isn't buffered on the server.
  Response.Flush();
}

在此代码中调用父aspx页面中的javascript函数来更新细节,但我在同一页面中处理该概念,我删除了“Parent”。在我的代码中获取预期的错误对象如何在单页中编写代码

1 个答案:

答案 0 :(得分:0)

借助jQuery(http://jQuery.com),您可以在javascript中执行以下操作:

function callServices() {
   var serviceUrls = ["http://yourdomain/svc1", "http://yourdomain/svc2", "http://yourdomain/svc3", "http://yourdomain/svc4"];
   for(i = 0; i < serviceUrls.length; i++) {
      $.ajax(serviceUrls[i], function(){ updateStatus("Service " + i); });
   }
}

function updateStatus(svc) {
    $("#statusBar").append("<span>" + svc + " has finished.</span>");
}

干杯!