c# - 更新面板、确认按钮和更新进度似乎无法协同工作

标签 c# javascript jquery asp.net

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

<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 =“返回确认('您确定要提交吗?');” 但在要求提交之前我需要先检查页面的验证,但我对此一无所知。

这是按钮的后台代码 atm。

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);
    }
}

关于c# - 更新面板、确认按钮和更新进度似乎无法协同工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24123517/

相关文章:

javascript - 确定浏览器是否支持 iFrame 中的 javascript?

javascript - redux-api-middleware 如何向 store 添加数据?

javascript - 使用 Fetch API 时,是否有通过 POST 请求发送数据的首选方式?

javascript - jQuery : Automatic type conversion during parse JSON

c# - 具有路由和查询字符串参数的 ASP.NET http配置映射

c# - 在 Quartz.net 中,如何在使用单个 IJob 时防止作业同时运行?

c# - 为什么 WCF 服务契约接口(interface)的对象可以转换为 IClientChannel

c# - 使用 NEST 无法将文档自动映射到 elasticsearch

javascript - 操作 HTML 并放入数组

javascript - 单击事件不适用于 jquery 中动态更改的类