【转】在ASP.NET中显示进度条

对于加载时间比较长的ASP.NET页面,我们可以在客户端浏览器中显示进度条来显示页面正在装载。下面就是具体的实现过程:
  
  1.新建项目,名字为WebPortal,在项目类型中选择Visual C#项目或者Visual Basic项目都可;
  2.在模板类型中选择ASP.NET Web应用程序;
  3.位置里输入:http://localhost/WebPortal;
  4.添加新项:名字为ShowProgress的Web窗体。
  5.在您的Web窗体ShowProgress.aspx上添加任何其他的Web服务器控件。
  6.在ShowProgress.aspx上单击右键,点“查看代码”,在最上面输入:
  Visual C# .NET代码
  using System.Threading;
  
  Visual Basic .NET代码
  Imports System.Threading
  
  7.在Page_Load事件里输入: Visual C# .NET代码
  Response.Write("<div id='mydiv' >");
  Response.Write("_");
  Response.Write("</div>");
  Response.Write("<script>mydiv.innerText = '';</script>");
  Response.Write("<script language=javascript>;");
  Response.Write("var dots = 0;var dotmax = 10;function ShowWait()");
  Response.Write("{var output; output = '正在装载页面';dots++;if(dots>=dotmax)dots=1;");
  Response.Write("for(var x = 0;x < dots;x++){output += '·';}mydiv.innerText = output;}");
  Response.Write("function StartShowWait(){mydiv.style.visibility = 'visible'; ");
  Response.Write("window.setInterval('ShowWait()',1000);}");
  Response.Write("function HideWait(){mydiv.style.visibility = 'hidden';");
  Response.Write("window.clearInterval();}");
  Response.Write("StartShowWait();</script>");
  Response.Flush();
  Thread.Sleep(10000);
  
  Visual Basic .NET代码
  Response.Write("<div id='mydiv' >")
  Response.Write("_")
  Response.Write("</div>")
  Response.Write("<script>mydiv.innerText = '';</script>")
  Response.Write("<script language=javascript>;")
  Response.Write("var dots = 0;var dotmax = 10;function ShowWait()")
  Response.Write("{var output; output = '正在装载页面';dots++;if(dots>=dotmax)dots=1;")
  Response.Write("for(var x = 0;x < dots;x++){output += '·';}mydiv.innerText = output;}")
  Response.Write("function StartShowWait(){mydiv.style.visibility = 'visible'; ")
  Response.Write("window.setInterval('ShowWait()',1000);}")
  Response.Write("function HideWait(){mydiv.style.visibility='hidden';")
  Response.Write("window.clearInterval();}")
  Response.Write("StartShowWait();</script>")
  Response.Flush()
  Thread.Sleep(10000)
  
  8.在ShowProgress.aspx窗体的html的中输入:
  <script>
  HideWait();
  </script>
  
  9.点在浏览器中查看即可 

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1828658


posted on 2007-10-17 11:44  reagan  阅读(296)  评论(0编辑  收藏  举报