繁体   English   中英

在单击按钮之前从其他控件执行回发时,防止双击提交按钮

[英]Prevent double click in submit-button when postback from other controls executed before button click

我在防止双击ASP.NET的Submit按钮时遇到问题。 我可以在没有ASP.NET Calendar页面中禁用提交按钮。 在具有“ Calendar页面中,日历的回发会在单击按钮之前禁用“提交”按钮。

我使用以下JavaScript来禁用按钮单击中的按钮。 如果在单击提交按钮之前没有来自其他asp.net控件的回发,则该方法有效。

function DisableButton() {
    document.getElementById("<%=ibtnNext.ClientID %>").disabled = true;
}
window.onbeforeunload = DisableButton;

我不知道该怎么办。 欢迎所有建议。

而不是使用window.onbeforeunload事件。 禁用其OnClientClick事件上的按钮。

仅在javascript中的OnClientClick事件之后,才会执行按钮的postBack(onClick事件)

<button id="ibtnNext" OnClientClick="return DisableButton()" onclick="btnSubmit_Click">Copy Text</button>

<script>
function DisableButton() 
{
     document.getElementById("<%=ibtnNext.ClientID %>").disabled = true;

     return true;
}
</script>

谢谢大家,我现在有以下解决方案

javascript <script type="text/javascript"> function DisableButton(btn){ btn.disabled = true; } </script> <script type="text/javascript"> function DisableButton(btn){ btn.disabled = true; } </script>

页面加载

protected sub Page_load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim optionsSubmit As New PostBackOptions(ibtnNext)
    ibtnNext.OnClientClick = "DisableButton(this);"
    ibtnNext.OnClientClick += ClientScript.GetPostBackEventReference(optionsSubmit) End Sub

点击事件中

Protected Sub ibtnNext_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ibtnNext.Click
    System.Threading.Thread.Sleep(2000) End Sub

原始链接http://www.devtoolshed.com/content/disable-button-submit-prevent-multiple-submits

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM