如何从服务器端代码中单击弹出窗口中的关闭链接来关闭Modal Popup Extender?
发布于 2010-03-27 19:22:28
在扩展器中有一个用于关闭弹出窗口的属性“CancelControlID”,在其中给出按钮id,然后弹出窗口将关闭,如果你想从服务器端关闭弹出窗口,意味着从代码后面的代码中有扩展属性hide(),在按钮代码后面写下弹出窗口的id并输入“”。之后,您将在这些属性中获得popup的所有属性,您将获得hide property.use,希望您将获得解决方案
示例
private void btnSubmit_Click(object sender, EventArgs e)
{
modelpopupextender.hide();
}发布于 2011-07-20 01:37:18
回答这个问题对发帖的人可能没有用处,但对其他人可能有用。
要从服务器端关闭模式弹出窗口,需要执行以下操作。
不是把关闭按钮id给modalpopupextender的"CancelControlID“,而是创建一个虚拟的隐藏字段,并把这个id给modalpopupextender的"CancelControlID”。
例如
<pre>
<asp:HiddenField ID="hidForModel" runat="server" />;
/*Are you sure you want to know the answer? */
<asp:Button ID="btnYes" runat="server" Text="Yes!" onclick="btnYes_Click" />;
<br />;
<asp:Panel ID="pnlModal" runat="server" CssClass="modalPopup" Style="display: none;">
<asp:Panel ID="pnlControls" runat="server" CssClass="insideModalPopup></asp:Panel>
<br />
<asp:Button ID="btnClose" runat="server" Text="Close" onclick="btnClose_Click" />
</asp:Panel>
<cc1:ModalPopupExtender TargetControlID="hidForModel" ID="pnlModal_ModalPopupExtender"
runat="server" DynamicServicePath="" Enabled="True" BackgroundCssClass="modalBackground"
PopupControlID="pnlModal" CancelControlID="hidForModel" DropShadow="true">
</cc1:ModalPopupExtender>
</pre>在这里,我将TargetControlID和CancelControlID都指定为hidForModel,这是我想要显示的,也是对代码隐藏模式弹出窗口的隐藏。
在代码隐藏中
<pre>
protected void btnYes_Click(object sender, EventArgs e)
{
pnlModal_ModalPopupExtender.Show();
TextBox txt = new TextBox();
txt.Text = "aaa";
pnlControls.Controls.Add(txt);
}
protected void btnClose_Click(object sender, EventArgs e)
{
pnlModal_ModalPopupExtender.Hide();
}
</pre>在这里,我已经使模式弹出窗口可见,并添加了一个文本框从代码隐藏点击是按钮,并隐藏了模式弹出点击关闭按钮。
发布于 2012-12-06 15:12:03
您可以使用CancelControlID属性关闭弹出框。
<asp:ModalPopupExtender ID="mpe_login" runat="server"
TargetControlID="btn_login_popup" PopupControlID="panel_login"
BackgroundCssClass="LoginBackground1"
CancelControlID="btn_Cancel" />https://stackoverflow.com/questions/2513236
复制相似问题