【IT168技术文档】
好久没有写东西了,今天将以前给同事写的一段代码改了一下共享出来。这段代码用于实现在点击按钮后禁用它直到操作完成。有更好的方法大家可以讨论!
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Page_Load (object sender, EventArgs e) { btn.Attributes.Add ("onclick", Page.GetPostBackEventReference (btn, "") + ";this.value='Submitting';this.disabled = true;"); lbtn.Attributes.Add ("onclick", "this.innerText='Submitting';this.disabled = true;"); ibtn.Attributes.Add ("onclick", Page.GetPostBackEventReference (ibtn, "") + ";this.alt='Submitting';this.disabled = true;"); // // ASP.NET 2.0 above // //btn.Attributes.Add ("onclick", // ClientScript.GetPostBackEventReference (btn, "") + // ";this.value='Submitting';this.disabled = true;"); //lbtn.Attributes.Add ("onclick", // "this.innerText='Submitting';this.disabled = true;"); //ibtn.Attributes.Add ("onclick", // ClientScript.GetPostBackEventReference (ibtn, "") + // ";this.alt='Submitting';this.disabled = true;"); // // OR // //btn.OnClientClick = // ClientScript.GetPostBackEventReference (btn, "") + // ";this.value='Submitting';this.disabled = true;"; //lbtn.OnClientClick = "this.innerText='Submitting';this.disabled = true;"; //ibtn.OnClientClick = ClientScript.GetPostBackEventReference (ibtn, "") + // ";this.alt='Submitting';this.disabled = true;"; } protected void btn_Click (object sender, EventArgs e) { System.Threading.Thread.Sleep (2000); Label1.Text = DateTime.Now.ToString (); } protected void lbtn_Click (object sender, EventArgs e) { LinkButtonClickCount++; System.Threading.Thread.Sleep (2000); Label1.Text = "link button:" + DateTime.Now.ToString () + "<br/>count:" + LinkButtonClickCount.ToString (); } protected void ibtn_Click (object sender, ImageClickEventArgs e) { ImageButtonClickCount++; System.Threading.Thread.Sleep (2000); Label1.Text = "image button:" + DateTime.Now.ToString () + "<br/>count:" + ImageButtonClickCount.ToString (); } int LinkButtonClickCount { get { object tmp = ViewState["LinkButtonClickCount"]; return (tmp == null) ? 0 : (int)tmp; } set { ViewState["LinkButtonClickCount"] = value; } } int ImageButtonClickCount { get { object tmp = ViewState["ImageButtonClickCount"]; return (tmp == null) ? 0 : (int)tmp; } set { ViewState["ImageButtonClickCount"] = value; } } </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>无标题页</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Button ID="btn" runat="server" Text="What time is it, please!" OnClick="btn_Click" /> <asp:LinkButton ID="lbtn" runat="server" OnClick="lbtn_Click"> What time is it, please!</asp:LinkButton> <asp:ImageButton ID="ibtn" runat="server" AlternateText="What time is it, please!" Height="30px" OnClick="ibtn_Click" ImageUrl="http://www.ikea.com/ms/img/menu/products/32x32/clocks_32x32.gif" /> <br /> <asp:Label ID="Label1" runat="server" Text=""></asp:Label> </div> </form> </body> </html>