我正在使用来自 AjaxToolkit 的 ModalPopupExtender 用于 asp.net。我正在尝试使用不同的按钮触发 ModalPopupExtender。问题是,除非我使用 TargetControlID,否则弹出窗口会在一秒钟内打开并快速关闭。我需要这个弹出窗口可以通过几个不同的按钮访问,每次都使用同一个面板。
下面的代码应该很好地复制了这个问题,在我的实际应用程序中它几乎可以正常工作。甚至内容正在使用弹出窗口的选定面板进行更新,除了当我从 OnClientClick 调用 .show() 时它在大约 1/2 秒后关闭;
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Untitled Page</title>
<script language="javascript" type="text/javascript">
//Function to Hide ModalPopUp
function Hidepopup() {
$find('AjaxPopupHi').hide();
}
//Function to Show ModalPopUp
function Showpopup() {
$find('AjaxPopupHi').show();
}
</script>
</head>
<form id="form1" runat="server">
<asp:LinkButton ID="lnk" OnClientClick = "Showpopup()" runat="server" Text="hi"></asp:LinkButton>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<br />
<asp:Button ID="Button_dummy" Style="display: none" runat="server" Text="Button" />
<ajaxToolKit:ModalPopupExtender ID="mpe" runat="server" BehaviorID="AjaxPopupHi" TargetControlID="Button_dummy" PopupControlID="pnl"
CancelControlID="close" />
<!--BELOW panel does not remain OPEN :/-->
<asp:Panel ID="pnl" runat="server" CssClass="popupPanel">
<div>
Hi!!!
</div>
<asp:Button ID="close" runat="server" Text="Close" />
</asp:Panel>
</form>
谢谢