0

我正在尝试使用 JavaScript 打开一个 ModalPopup,我已经在 stackoverflow 上进行了搜索,一般建议似乎是使用这样的东西:

$('#inputAdd').live("click", function () {
    $('#addRow').show();
    $find('<%=mpeIndications.BehaviorID %>').show();
});

#inputAdd 是我在 ModalPopup 中的 html 输入图像,它的目标是显示显示 TextBox 的行(#addRow)。但是,当我单击#inputAdd 按钮时,它显示该行,但随后 ModalPopup 隐藏,我认为原因可能是因为有一个包含 ModalPopup 的 UpdatePanel,我是对的吗?在那种情况下,这可能是一个解决方案?我已经将一些代码放在了.ascx 中。谢谢。

<table class="content-box">
    <tr>
        <td valign="top">
             <asp:UpdatePanel runat="server" ID="upAppointments">
                  <ContentTemplate>
                        <table>
                            <tr>
                                <td>
                                    <asp:Button runat="server" ID="btnIndicationsHidden" Style="display: none;" />
                                    <asp:Panel runat="server" ID="pnlIndications" CssClass="modalPanel" Style="display: none;">
                                    <table class="content-box">
                                        <tr>
                                           <td>
                                               <table style="width: 100%;">
                                                    <tr>
                                                        <td>
                                                           <asp:Panel runat="server" ID="pnlShowCurrentIndication" Style="padding: 13px 8px 8px 8px">
                                                                <table style="width: 100%; border: 0;">
                                                                <tr>
                                                                    <td style="width: 30%; vertical-align: top;" rowspan="2">
                                                                        <asp:RadioButtonList runat="server" ID="gvProfiles" OnDataBound="gvProfiles_DataBound"
                                                                            DataTextField="Name" DataValueField="Id" Style="white-space: nowrap;" />
                                                                    </td>
                                                                    <td style="padding-left: 10px;" class="contentBox">
                                                                        <table style="width: 100%;">
                                                                            <tbody id="showTable">
                                                                                <tr>
                                                                                    <td id="indicacionestd" runat="server">
                                                                                        Indicaciones:
                                                                                    </td>
                                                                                </tr>
                                                                                <tr>
                                                                                    <td>
                                                                                        <asp:BulletedList ID="blIndicaciones" DataTextField="Valor" runat="server">
                                                                                        </asp:BulletedList>
                                                                                    </td>
                                                                                </tr>
                                                                                <tr>
                                                                                    <td id="contraindicacionestd" runat="server">
                                                                                        Contraindicaciones:
                                                                                    </td>
                                                                                </tr>
                                                                                <tr>
                                                                                    <td>
                                                                                        <asp:BulletedList ID="blContraindicaciones" DataTextField="Valor" runat="server">
                                                                                        </asp:BulletedList>
                                                                                    </td>
                                                                                </tr>
                                                                            </tbody>
                                                                            <tbody style="display: none;" id="addRow">
                                                                                <tr>
                                                                                    <td style="text-align: left; white-space: nowrap;" class="colSepGran">
                                                                                        Nombre:
                                                                                    </td>
                                                                                </tr>
                                                                                <tr class="filSepGranRA">
                                                                                    <td class="colSepGran">
                                                                                        <asp:TextBox runat="server" ID="txbName" CssClass="txtNoWidth" Width="150px" ToolTip="Especifique el nombre del perfil"></asp:TextBox>
                                                                                        <act:FilteredTextBoxExtender runat="server" ID="ftbeName" FilterMode="ValidChars"
                                                                                            FilterType="UppercaseLetters, LowercaseLetters, Custom" TargetControlID="txbName"
                                                                                            ValidChars="ñ Ñ ' á é í ó ú Á É Í Ó Ú ü Ü ." />
                                                                                    </td>
                                                                                </tr>
                                                                            </tbody>
                                                                        </table>
                                                                    </td>
                                                                </tr>
                                                                <tr>
                                                                    <td style="text-align: center; vertical-align: middle;">
                                                                        <table style="width: 100%;">
                                                                            <tr>
                                                                                <td>
                                                                                    &nbsp;
                                                                                </td>
                                                                                <td>
                                                                                    <input type="image" src="../../App_Themes/Theme/Images/AppIcons/add.png/" id="inputAdd"
                                                                                        title="Adicionar perfil">
                                                                                </td>
                                                                                <td>
                                                                                    <input type="image" src="../../App_Themes/Theme/Images/AppIcons/add_document.png"
                                                                                        id="inputAddSimple" title="Adicionar indicación" />
                                                                                </td>
                                                                                <td>
                                                                                    <input type="image" src="../../App_Themes/Theme/Images/AppIcons/edit.png" id="inputEdit"
                                                                                        title="Editar perfil" />
                                                                                </td>
                                                                                <td>
                                                                                    <asp:ImageButton runat="server" ID="imbRemoveProfile" ToolTip="Eliminar perfil" ImageUrl="~/App_Themes/Theme/Images/AppIcons/delete.png" />
                                                                                </td>
                                                                                <td>
                                                                                    &nbsp;
                                                                                </td>
                                                                            </tr>
                                                                        </table>
                                                                    </td>
                                                                </tr>
                                                                <tr>
                                                                    <td colspan="2">
                                                                    </td>
                                                                </tr>
                                                            </table>
                                                        </asp:Panel>
                                                    </td>
                                                </tr>
                                            </table>
                                        </td>
                                    </tr>
                                </table>
                            </asp:Panel>
                            <act:ModalPopupExtender ID="mpeIndications" runat="server" PopupControlID="pnlIndications"
                                BackgroundCssClass="modalBackground" TargetControlID="btnIndicationsHidden" CancelControlID="imbCloseIndications"
                                BehaviorID="mpeIndications">
                            </act:ModalPopupExtender>
                        </td>
                    </tr>
                        </table>
                  </ContentTemplate>
             </asp:UpdatePanel>
        </td>
    </tr>
</table>
4

2 回答 2

0

然后尝试这种方法:

为 ModalPopup Extender 添加一个隐藏链接以附加到(永远不会使用)

<a href="#" style="display:none;visibility:hidden;" 
   onclick="return false" ID="dummyLink" runat="server">dummy</a>

将隐藏链接的 ID 添加到ModalPopupExtender

<act:ModalPopupExtender ID="mpeIndications" runat="server" PopupControlID="pnlIndications"
     BackgroundCssClass="modalBackground" 
     TargetControlID="dummyLink" 
     CancelControlID="imbCloseIndications"
     BehaviorID="mpeIndications">

显示模式弹出窗口

$find('MyMPE').show();

http://www.geekzilla.co.uk/View38736C2B-BAD3-418A-A5B0-DAC4F1A5A83A.htm

于 2012-04-14T23:57:08.470 回答
0

用 Jquery 建模对话框 Asp.Net

于 2012-04-15T04:17:04.257 回答