【问题标题】:Close modal popup on click of button inside the modal单击模式内的按钮关闭模式弹出窗口
【发布时间】:2014-11-17 18:09:25
【问题描述】:

我有一个用户控件,它显示在模式弹出窗口中。

<ajt:ModalPopupExtender OkControlID="btnOk" runat="server"
                PopupControlID="pnlViewOrderItems" ID="mpxViewItems" TargetControlID="btnOk"
                BehaviorID="bhvIDViewProd" CancelControlID="ImgbtnCloseViewItems" />
            <asp:Panel ID="pnlViewOrderItems" runat="server" Style="display: none; padding: 0px;
                margin: 0px;" CssClass="mdlPopUp">
                <asp:ImageButton ID="ImgbtnCloseViewItems" Style="position: absolute; top: -15px;
                    right: -25px;" ImageUrl="~/Images/site/close.gif" runat="server" CausesValidation="false" />
                <div id="divOrderItems" runat="server" clientidmode="Static" style="overflow: auto;
                    padding: 0px">
                    <table cellpadding="8" cellspacing="0" width="100%">
                        <tr style="height: 5px; padding: 0px; margin: 0px;" class="mdlHdr" valign="top">
                            <td align="center" colspan="2">
                                <h3>
                                    <asp:Label ID="lblMdlHrd" runat="server"></asp:Label>
                                </h3>
                            </td>
                        </tr>
                        <tr>
                            <td style="padding: 20px; width: 100%" colspan="2">
                                <uc:CustomerOrderDetails ID="ucCustOrderDetails" runat="server" />
                            </td>
                        </tr>
                    </table>
                </div>
            </asp:Panel>

用户输入一些数据并单击一个按钮,单击我要关闭模式弹出窗口的按钮。

protected void btnCloseModal_Click(object sender, EventArgs e)
{
    //Some code.
    ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "CloseModal", "CloseModal();", true);
}
function CloseModal() {
            debugger;
            $find('bhvIDViewProd').hide();
        }

但它没有关闭模式弹出窗口。谁能建议如何做到这一点?

谢谢。

【问题讨论】:

  • CloseModal函数中删除debugger

标签: jquery asp.net modal-dialog


【解决方案1】:

您可以直接将OnCancelScript 的JS 函数与ModalPopupExtender 关联,然后您可以从那里关闭模态弹出窗口,如下所示。不用贴到代码后面去触发JS函数。

<asp:ModalPopupExtender .... CancelControlID="ButtonCancel" OnCancelScript="CancelScript();"
</asp:ModalPopupExtender>

还有你的 JavaScript 函数

function CancelScript() {
     $find('bhvIDViewProd').hide();
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-21
    • 1970-01-01
    • 2021-03-06
    • 1970-01-01
    • 2018-04-02
    • 2018-08-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多