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

Javascript 当从按钮单击之前执行的其他控件回发时,防止在提交按钮中双击,javascript,asp.net,vb.net,Javascript,Asp.net,Vb.net,在ASP.NET中,我遇到了一个防止双击提交按钮的问题。 我可以在没有ASP.NET日历的页面中禁用“提交”按钮。 在包含此日历的页面中,日历的回发会在单击按钮之前禁用“提交”按钮 我使用以下javascript禁用按钮单击中的按钮。如果在单击“提交”按钮之前没有来自其他asp.net控件的回发,则此选项有效 function DisableButton() { document.getElementById("<%=ibtnNext.ClientID %>").disabl

ASP.NET
中,我遇到了一个防止双击提交按钮的问题。 我可以在没有ASP.NET
日历的页面中禁用“提交”按钮。
在包含此
日历的页面中,日历的回发会在单击按钮之前禁用“提交”按钮

我使用以下javascript禁用按钮单击中的按钮。如果在单击“提交”按钮之前没有来自其他asp.net控件的回发,则此选项有效

function DisableButton() {
    document.getElementById("<%=ibtnNext.ClientID %>").disabled = true;
}
window.onbeforeunload = DisableButton;
功能禁用按钮(){
document.getElementById(“”).disabled=true;
}
window.onbeforeunload=禁用按钮;
我不知道该怎么办。
欢迎所有建议。

而不是使用窗口。onbeforeunload事件。在客户端单击事件上禁用按钮

按钮的回发(onClick事件)将仅在javascript中的OnClientClick事件之后执行

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

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

     return true;
}
</script>
复制文本
函数禁用按钮()
{
document.getElementById(“”).disabled=true;
返回true;
}
谢谢大家, 我现在得到的解决方案如下

javascript

功能禁用按钮(btn){
btn.disabled=true;
}

页面内加载

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
原始链接

“日历的回发使“提交”按钮在单击按钮之前禁用”,这对我来说没有多大意义。你能显示禁用它的代码吗?可能意味着他禁用了回发按钮,所以任何回发(在本例中是由日历引起的)都会禁用它@林美敏你是怎么禁用这个按钮的?客户端还是服务器端?谢谢大家的评论。我想在单击“提交”按钮后禁用它。我使用了以下javascript。它适用于没有任何从其他asp.net控件函数DisableButton()回发的简单页面({document.getElementById(“”).disabled=true;}window.onbeforeunload=DisableButton;为什么不能在pageload中将DisableButton()指定为IBMNext的onclick属性?谢谢您的建议,但它只是禁用了按钮,无法保存数据。如果在单击按钮之前没有其他控件的回发,我可以使用window.onbeforeunload事件。