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

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

前台代码:


<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

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

猜你喜欢

  • Java枚举类与注解,新手一篇搞定它

    2022-03-10 08:47:52
  • Spring AOP如何整合redis(注解方式)实现缓存统一管理详解

    2023-11-19 06:09:27
  • Android集成微信登录的步骤详解

    2023-01-12 15:12:45
  • 详解Java同步—线程锁和条件对象

    2023-06-01 03:28:46
  • java中的session对象及其常用方法小结

    2023-11-25 02:31:33
  • 详解Java数据库连接JDBC基础知识(操作数据库:增删改查)

    2023-08-22 23:47:37
  • android长截屏原理及实现代码

    2021-11-13 05:55:50
  • C#事件中关于sender的用法解读

    2022-09-30 20:28:39
  • Java数据结构之稀疏数组的实现与应用

    2023-12-04 22:46:41
  • C#词法分析器之正则表达式的使用

    2023-06-21 13:10:58
  • Android实现仪表盘效果

    2021-07-26 13:19:37
  • Android Studio做超好玩的拼图游戏 附送详细注释源码

    2023-08-05 12:19:16
  • springboot+swagger2.10.5+mybatis-plus 入门详解

    2023-03-15 01:58:38
  • C# 获取PDF中的数字签名证书

    2023-03-07 18:16:15
  • SpringBoot如何返回Json数据格式

    2023-01-12 16:28:51
  • C#中Dictionary<TKey,TValue>排序方式的实现

    2021-07-13 10:59:10
  • 深入剖析Java中String类的concat方法

    2023-06-02 07:07:13
  • C#灰度化图像的实例代码

    2023-07-14 07:35:34
  • WPF自定义TreeView控件样式实现QQ联系人列表效果

    2023-02-01 06:34:17
  • Java环境变量的设置方法(图文教程)

    2023-01-02 17:51:42
  • asp之家 软件编程 m.aspxhome.com