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

来源:互联网 发布:苹果手机报警软件 编辑:程序博客网 时间:2024/05/16 07:52

http://dotnet.aspx.cc/article/794566b9-5ea2-4782-2d42-e133f3c7ba74/read.aspx对于加载时间比较长的ASP.NET页面,我们可以在客户端浏览器中显示进度条来显示页面正在装载。下面就是具体的实现过程:新建项目,名字为WebPortal,在项目类型中选择Visual C#项目或者Visual Basic项目都可; 在模板类型中选择ASP.NET Web应用程序; 位置里输入:http://localhost/WebPortal; 添加新项:名字为ShowProgress的Web窗体。 在您的Web窗体ShowProgress.aspx上添加任何其他的Web服务器控件。 在ShowProgress.aspx上单击右键,点"查看代码",在最上面输入:Visual C# .NET代码 using System.Threading;在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);在ShowProgress.aspx窗体的html的中输入: <script>HideWait();</script>点在浏览器中查看即可。 测试之后数据 protected void Page_Load(object sender, EventArgs e)    {        if (!IsPostBack)        {            System.Data.DataTable dt = new System.Data.DataTable();            System.Data.DataRow dr;            dt.Columns.Add(new System.Data.DataColumn("id", typeof(Int32)));            dt.Columns.Add(new System.Data.DataColumn("PkID", typeof(string)));            dt.Columns.Add(new System.Data.DataColumn("Title", typeof(string)));            for (int i = 0; i < 6; i++)            {                dr = dt.NewRow();                dr[0] = i;                dr[1] = "123456789123456789123456789";                dr[2] = "<a href='http://dotnet.aspx.cc/'>欢迎光临【孟宪会之精彩世界】</a>";                dt.Rows.Add(dr);            }            System.Data.DataView dv = new System.Data.DataView(dt);            //return dv;                        GridView1.BorderWidth = Unit.Pixel(2);            GridView1.BorderColor = System.Drawing.Color.DarkOrange;            GridView1.DataSource = dv;            GridView1.DataBind();            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);        }           }<head runat="server">    <title>将 GridView 导出到 Excel 文件中</title>    <script>HideWait();</script></head>

原创粉丝点击