软件编程
位置:首页>> 软件编程>> C#编程>> Asp.Net中避免重复提交和弹出提示框的实例代码

Asp.Net中避免重复提交和弹出提示框的实例代码

作者:.net 流氓  发布时间:2022-10-01 19:57:26 

标签:.net,重复提交,提示框

前台代码:


<asp:Button ID="Button1" runat="server" Text="打印"  onclick="Button1_Click" OnClientClick="this.value='数据提交中……';this.disabled=true;" UseSubmitBehavior="False" />

后台代码:


public partial class WebForm1 : System.Web.UI.Page
 {
   protected override void OnLoad(EventArgs e)
   {
     StringBuilder pageBase_script = new StringBuilder("<script Language=\"Javascript\">");
     pageBase_script.Append(@"var times=0;
        function pageBase_tick() //用于显示执行的时长
        {
        times++;
           var str = '';
           var temp = times%5;
           for(var i=0;i<temp;i++)
             str+='.';
        document.getElementById('pageBase_Clocktimes').innerHTML ='正在提交,请稍候'+ str;
        } "
       );
     pageBase_script.Append("<").Append("/").Append("script>");
     StringBuilder pageBase_div = new StringBuilder(" <div id=\"pageBase_runing\" runat=\"server\" style=\"z-index: 12000; left: 0px; width: 100%; position: absolute; top: 0px; height: 100%\">");
     pageBase_div.Append("<table width=\"100%\" height=\"100%\">");
     pageBase_div.Append("<tr align=\"center\" valign=\"middle\">");
     pageBase_div.Append("<td>");
     pageBase_div.Append(" <table width=\"200\" height=\"25\" bgcolor=\"#9999FF\" style=\"filter: Alpha(Opacity=70); \">");
     pageBase_div.Append(" <tr align=\"center\" valign=\"middle\">");
     pageBase_div.Append("  <td>");
     pageBase_div.Append("<div style=\"width:200px;height:25px; background-color: #99CCFF; \">");
     pageBase_div.Append("     <div id=\"pageBase_Clocktimes\" style=\"color: #FF0000; float:left; width:196px;height:21px \" >正在提交,请稍候</div>");
     pageBase_div.Append("</div>");
     pageBase_div.Append("</td>");
     pageBase_div.Append(" </tr>");
     pageBase_div.Append(" </table>");
     pageBase_div.Append(" </td>");
     pageBase_div.Append(" </tr>");
     pageBase_div.Append(" </table>");
     pageBase_div.Append("</div>");
     StringBuilder pageBase_divHide = new StringBuilder("<script Language=\"Javascript\">");
     pageBase_divHide.Append("document.getElementById('pageBase_runing').style.visibility = \"hidden\";");
     pageBase_divHide.Append("<").Append("/").Append("script>");
     if (!Page.ClientScript.IsStartupScriptRegistered("runingscript"))
     {
       Page.ClientScript.RegisterStartupScript(Page.GetType(), "pageBase_div", pageBase_div.ToString());
       Page.ClientScript.RegisterStartupScript(Page.GetType(), "pageBase_script", pageBase_script.ToString());
       Page.ClientScript.RegisterStartupScript(Page.GetType(), "pageBase_divHide", pageBase_divHide.ToString());
     }
     base.OnLoad(e);
   }
   /// <summary>
   /// 设置提交之后.出现请等待提示,在页面调用基类的这个方法,把要提交的控件传入即可
   /// </summary>
   /// <param name="btn">提交按钮</param>
   public void SubmitLoad(Button btn)
   {
     btn.Attributes.Add("onclick", "javascript:document.getElementById('pageBase_runing').style.visibility='visible';window.setInterval('pageBase_tick()',500);");
   }
   /// <summary>
   /// 设置提交之后.出现请等待提示
   /// </summary>
   /// <param name="lbtn">提交按钮</param>
   public void SubmitLoad(LinkButton lbtn)
   {
     lbtn.Attributes.Add("onclick",
                "javascript:document.getElementById('pageBase_runing').style.visibility='visible';window.setInterval('pageBase_tick()',1000);");
   }
   protected void Page_Load(object sender, EventArgs e)
   {
     SubmitLoad(Button1);
   }
   protected void Button1_Click(object sender, EventArgs e)
   {
     Button1.Enabled=false;
     //string IP = PrintingLabel.SearchPrinterIP(TextBox1.Text, TextBox2.Text, TextBox3.Text);
     //Response.Write(IP);
     int ifs=0;
     for (int i = 0; i < 1000000000; i++)
     {
       ifs++;
     }
   }
 }
}

以上所述是小编给大家介绍的asp.net中避免重复提交和弹出提示框的实例代码网站的支持!

来源:http://www.cnblogs.com/qiuweiguo/archive/2012/10/18/2728837.html

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com