对于长时间装载的ASP.NET页面如何在客户端浏览器中显示进度?

本文介绍如何在ASP.NET应用中实现页面加载进度条。通过客户端JavaScript与服务器端C#或VB.NET配合,动态更新进度指示,提升用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于加载时间比较长的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. 点在浏览器中查看即可。  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值