您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> asp.net编程 >> 正文

注册或者点击按钮时,怎么防止用户重复提交数据

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 这篇文章主要是对注册或者点击按钮时,怎么防止用户重复提交数据进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助

asp.net实现点击按钮后设按钮不可用并提交  代码如下: <asp:Button ID="Button1" runat="server" Text="123456" OnClientClick="this.disabled=true;this.form.submit(); "  UseSubmitBehavior= "False"  onclick="Button1_Click" />   客户端加载的时候,重新将这个操作再启动 代码如下:     <script language="javascript" type="text/javascript">         function controlButton(flag) {             var btnObj = document.getElementById("Button1");             btnObj.disabled = flag;             }       </script> </head> <body onload="controlButton(false);">   后台代码: 代码如下: protected void Button1_Click(object sender, EventArgs e)         {             Thread.Sleep(3000);             Response.Write("123213<br>");             Response.Write("123213<br>");             Response.Write("123213<br>");         }   如果页面按钮很多,那么可以采用另一种方式:   后台page_load代码:   代码如下: this.BtnSend.Attributes.Add("onclick", this.GetPostBackEventReference(this.BtnSend) + ";this.disabled=true; ");   前台button的代码: 代码如下:  <asp:button id="BtnSend" runat="server" Width="80px" ForeColor="White"                  Text="发送" BackColor="#376091" BorderColor="#FFFFFF" Font-Bold="True"                  style="height: 24px" Font-Size="13px" BorderStyle="None"   OnClick="BtnSend_Click" ></asp:button>   因为控件的this.disabled设置后,控件为禁用状态,无法在回发调用后台的事件方法,所以必须用GetPostBackEventReference先进行回调后台的事件方法后,再调用disabled=true。   ASP.NET UseSubmitBehavior 属性   定义和用法 UseSubmitBehavior 属性规定按钮控件使用客户端浏览器内建的提交功能,还是使用 ASP.NET 的 postback 机制。   该属性被设置为 TRUE,如果控件使用浏览器的提交机制。否则为 FALSE。默认值是 TRUE。   当设置为 FALSE 时,ASP.NET 会添加一段客户端脚本来回传该表单。   当 UseSubmitBehavior 属性为 false 时,控件开发人员可以使用 GetPostBackEventReference 方法来返回 Button 的客户端回发事件。GetPostBackEventReference 方法返回的字符串包含客户端函数调用的文本,可以插入到客户端事件处理程序中。   语法 <asp:Button UseSubmitBehavior="TRUE|FALSE" runat="server" /> 实例 下面的例子使用 ASP.NET 的 postback 机制:   代码如下: <script runat="server"> Sub SubmitBtn(obj As Object, e As EventArgs)   lblMsg.Text = "Submitted using the ASP.NET postback mechanism." End Sub </script>   <form runat="server"> Click the button: <asp:button id="Button1" runat="server" Text="Submit" onclick="SubmitBtn"  UseSubmitBehavior="FALSE" /> <br />   <asp:label id="lblMsg" runat="server"/> </form>