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