在点击它时使用javascript禁用aspx中的按钮并从后面的代码启用它

时间:2013-09-20 08:54:24

标签: javascript asp.net

我希望当用户点击按钮,禁用它并在完成工作后从后面的代码启用它

我使用下面的代码但禁用它然后启用它,因为再次加载页面并且不会从后面的代码中调用按钮事件单击

ASPX

<asp:ScriptManager runat="server"></asp:ScriptManager>
<asp:UpdatePanel runat="server" id="UpdatePanel" updatemode="Conditional">
    <ContentTemplate>
        <div>
            <asp:Button runat="server" ID="btnReg" OnClick="reg_Click" OnClientClick="disableButton();" Text="Click On Me..." />
        </div>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="btnReg" EventName="Click" />
    </Triggers>
</asp:UpdatePanel>

的JavaScript

function disableButton() 
{
    document.getElementById("<%=btnReg.ClientID%>").disabled = true;
}

代码

protected void reg_Click(object sender, EventArgs e)
{
    //do work
    btnReg.Enabled = true;
}

1 个答案:

答案 0 :(得分:2)

使用javascript禁用您的按钮,如下所示:

document.getElementById("<%=btnReg.ClientID%>").disabled = true;

从代码隐藏启用它,如下所示:

//after doing some logic 

btnReg.Enabled = true;
UpdatePanel.Update();

有关信息,请阅读 this

$(function() {    
  function doosomething()
  {
    document.getElementById("<%=btnReg.ClientID%>").enabled= true;
  }
};

一旦禁用代码隐藏按钮,就立即调用此函数,如下所示:

System.Web.UI.ScriptManager.RegisterClientScriptBlock(Page, typeof(Page), "Script", "doosomething();", true);