溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

注冊或者點(diǎn)擊按鈕時(shí)防止用戶重復(fù)提交數(shù)據(jù)的方法教程

發(fā)布時(shí)間:2021-10-08 15:05:11 來源:億速云 閱讀:174 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“注冊或者點(diǎn)擊按鈕時(shí)防止用戶重復(fù)提交數(shù)據(jù)的方法教程”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

asp.net實(shí)現(xiàn)點(diǎn)擊按鈕后設(shè)按鈕不可用并提交

復(fù)制代碼 代碼如下:

<asp:Button ID="Button1" runat="server" Text="123456" OnClientClick="this.disabled=true;this.form.submit(); "  UseSubmitBehavior= "False"  onclick="Button1_Click" />


客戶端加載的時(shí)候,重新將這個(gè)操作再啟動

復(fù)制代碼 代碼如下:

    <script language="javascript" type="text/javascript">
        function controlButton(flag) {
            var btnObj = document.getElementById("Button1");
            btnObj.disabled = flag;   
        }

    </script>
</head>
<body onload="controlButton(false);">


后臺代碼:

復(fù)制代碼 代碼如下:

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代碼:

復(fù)制代碼 代碼如下:

this.BtnSend.Attributes.Add("onclick", this.GetPostBackEventReference(this.BtnSend) + ";this.disabled=true; ");


前臺button的代碼:

復(fù)制代碼 代碼如下:

 <asp:button id="BtnSend" runat="server" Width="80px" ForeColor="White"
                Text="發(fā)送" BackColor="#376091" BorderColor="#FFFFFF" Font-Bold="True"
                 Font-Size="13px" BorderStyle="None"   OnClick="BtnSend_Click" ></asp:button>


因?yàn)榭丶膖his.disabled設(shè)置后,控件為禁用狀態(tài),無法在回發(fā)調(diào)用后臺的事件方法,所以必須用GetPostBackEventReference先進(jìn)行回調(diào)后臺的事件方法后,再調(diào)用disabled=true。

ASP.NET UseSubmitBehavior 屬性

定義和用法
UseSubmitBehavior 屬性規(guī)定按鈕控件使用客戶端瀏覽器內(nèi)建的提交功能,還是使用 ASP.NET 的 postback 機(jī)制。

該屬性被設(shè)置為 TRUE,如果控件使用瀏覽器的提交機(jī)制。否則為 FALSE。默認(rèn)值是 TRUE。

當(dāng)設(shè)置為 FALSE 時(shí),ASP.NET 會添加一段客戶端腳本來回傳該表單。

當(dāng) UseSubmitBehavior 屬性為 false 時(shí),控件開發(fā)人員可以使用 GetPostBackEventReference 方法來返回 Button 的客戶端回發(fā)事件。GetPostBackEventReference 方法返回的字符串包含客戶端函數(shù)調(diào)用的文本,可以插入到客戶端事件處理程序中。

語法
<asp:Button UseSubmitBehavior="TRUE|FALSE" runat="server" /> 實(shí)例
下面的例子使用 ASP.NET 的 postback 機(jī)制:

復(fù)制代碼 代碼如下:

<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>

“注冊或者點(diǎn)擊按鈕時(shí)防止用戶重復(fù)提交數(shù)據(jù)的方法教程”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI