繁体   English   中英

如何禁用导致ASP.NET UpdatePanel返回的提交按钮

[英]How to disable submit button which caused post back on ASP.NET UpdatePanel

我有一个带有几个按钮的UpdatePanel内部页面。 每个按钮导致PostBack事件。 但是我发现用户可以在按钮和崩溃应用程序中多次单击。 我希望在第一次单击时禁用所有按钮,直到将处理回发并且到达UpdatePanel的新内容为止。

我试图(通过jQuery)绑定到按钮的“单击”事件,设置为“禁用”; 属性并在父表单上调用“提交”。 不幸的是,此方法似乎无法正常工作-UpdatePanel的内容仍旧。

之后,我尝试覆盖“提交”事件,但遇到另一个问题-如果每次来我的处理程序时,如何再次提交表单? 它可以通过引入标志变量来解决,但是我不喜欢它-另一个变量只是增加了代码的熵。

也许我可以使用ASP.NET方法以某种方式做到这一点?

首次单击后,应用ajax UpdateProgress并将代码放入UpdatePanel中以禁用Button:

<aspAtlas:UpdateProgress ID="upUpdatePanelProgress" runat="server" DisplayAfter="0"
            DynamicLayout="true" AssociatedUpdatePanelID="updpnlProgram">
            <ProgressTemplate>
                <asp:Panel ID="Panel1" CssClass="overlay" runat="server">
                        <img runat="server" id="img1" src="../Images/UpdateProgress.gif" alt="Loading..." /><br />
                        <br />
                        <b>Loading...</b>
                    </asp:Panel>
            </ProgressTemplate>
        </aspAtlas:UpdateProgress>
 <aspAtlas:UpdatePanel runat="server" ID="updpnlProgram" UpdateMode="Conditional">
        <ContentTemplate>
<div>
//--Your code in this div
</div>
 </ContentTemplate>
        <Triggers>
            <aspAtlas:PostBackTrigger ControlID="Button_ID" />
        </Triggers>
    </aspAtlas:UpdatePanel>

暂无
暂无

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

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