更新面板、确认按钮和更新进度似乎不能一起工作

本文关键字:更新 不能 工作 一起 确认 按钮 | 更新日期: 2023-09-27 18:07:36

目前我没有运气试图让他们三个一起工作,我只有运气与更新面板和更新进度没有确认按钮到目前为止。

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
            <ContentTemplate>
                <asp:Button ID="btnEnter" runat="server" Text="Update" Width="180" Style="margin-left:157px;" 
                    OnClick="btnEnter_Click"  
                    CssClass="button-success pure-button"/>
                <asp:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server"
                    TargetControlID="btnEnter"
                    ConfirmText="Do you want to see submit?"
                    ConfirmOnFormSubmit="false">
                </asp:ConfirmButtonExtender> 
            </ContentTemplate> 
        </asp:UpdatePanel>
        <asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1"> 
            <ProgressTemplate> 
                <div class="overlay"></div>
                <div class="modal">
                <h2>Please Wait.....</h2>
                    <img alt="Loading..." src="/Images/loading.gif" />
                </div>
            </ProgressTemplate>
        </asp:UpdateProgress>

我在此之前使用了javascript函数confirm并将其取出它只是一个onclientclick按钮。
OnClientClick="return confirm('你确定要提交吗?');"但是我需要在要求提交之前先检查页面的有效性,但我对此一无所知。

这是自动取款机按钮的后台代码。

protected void btnEnter_Click(object sender, EventArgs e)
    {
        if(Page.IsValid )
        {
        }
    }

更新面板、确认按钮和更新进度似乎不能一起工作

您可以使用这样的客户端更容易和更有效地完成此操作:

你只需要在你的<asp:Button ID="btnEnter"控件中添加onclientclick属性,并从你的代码中删除<asp:ConfirmButtonExtender ID="ConfirmButtonExtender1"

它将是这样的:

   <asp:Button ID="btnEnter" runat="server" Text="Update" 
               Width="180" Style="margin-left:157px;" 
               OnClick="btnEnter_Click"  
               CssClass="button-success pure-button"
               OnClientClick="return confirm('Do you want to see submit?');"/>

就是这样!

所以你不需要asp:ConfirmButtonExtender

更新1

如果你需要先检查后面代码的条件,那么你可以使用下面的代码:

 protected void btnEnter_Click(object sender, EventArgs e)
 {
    if(Page.IsValid )
    {
          ScriptManager.RegisterStartupScrip(UpdatePanel1, this.GetType(), 
      "confirm", "return confirm('Are you sure you want to submit?');", true);
    }
}

尝试使用jquery验证表单,如果验证成功,则抛出确认对话框。

function ValidateForm(){
    //validation
    if(succeeded){
    return confirm('are you sure?');
   }else{
     return false
    }
}

$(document).ready(function(){
   $('#' + '<%= btnEnter.ClientID %>').click(function(){
    return ValidateForm();
   });
});