用javascript實(shí)現(xiàn)(頁面正在加載的效果)
代碼文件: using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Threading; namespace AjaxTest { /**//// <summary> /// WebForm2 的摘要說明。 /// </summary> public class WebForm2 : System.Web.UI.Page { protected System.Web.UI.WebControls.Button Button1; protected System.Web.UI.WebControls.Label Label1; private void Page_Load(object sender, System.EventArgs e) { 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();//這一句是最關(guān)鍵的 } private void Button1_Click(object sender, System.EventArgs e) { //當(dāng)點(diǎn)擊按鈕時(shí),假設(shè)請(qǐng)求需要較長(zhǎng)時(shí)間(這里設(shè)置為10秒) System.Threading.Thread.Sleep(10000); this.Label1.Text = "終于加載完成啦"; } Web 窗體設(shè)計(jì)器生成的代碼#region Web 窗體設(shè)計(jì)器生成的代碼 override protected void OnInit(EventArgs e) { // // CODEGEN: 該調(diào)用是 ASP.NET Web 窗體設(shè)計(jì)器所必需的。 // InitializeComponent(); base.OnInit(e); } /**//// <summary> /// 設(shè)計(jì)器支持所需的方法 - 不要使用代碼編輯器修改 /// 此方法的內(nèi)容。 /// </summary> private void InitializeComponent() { this.Button1.Click += new System.EventHandler(this.Button1_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion } } 頁面文件: <%@ Page language="c#" Codebehind="WebForm2.aspx.cs" AutoEventWireup="false" Inherits="AjaxTest.WebForm2" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML> <HEAD> <title>WebForm2</title> <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <script> HideWait(); </script> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <FONT face="宋體"> <asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 480px; POSITION: absolute; TOP: 200px" runat="server" Text="Button"></asp:Button> <asp:Label id="Label1" style="Z-INDEX: 102; LEFT: 632px; POSITION: absolute; TOP: 240px" runat="server">Label</asp:Label></FONT> </form> </body> </HTML> 用javascript實(shí)現(xiàn)(頁面正在加載的效果) |
|