我试图让一个模态弹出窗口工作,它需要在后面的代码中触发。
<asp:Button ID="btnModalPopUp" runat="server" Text="Button" Style="display: none" />
<asp:Panel ID="pnlModalPopup" runat="server" CssClass="modalPopup" Style="display: none"
Width="233px">
<div id="Div1" runat="server" cssclass="title">
Modal text here.
<asp:TextBox ID="txtEditComments" runat="server"></asp:TextBox>
</div>
</asp:Panel>
<cc1:ModalPopupExtender ID="modalMessage" runat="server" TargetControlID="btnModalPopUp"
PopupControlID="pnlModalPopup" BackgroundCssClass="modalBackground" DropShadow="true"/>
代码背后:
protected void Page_Load(object sender, EventArgs e)
{
modalMessage.Show();
}
即使它命中了“modalMessage.Show();”代码它不显示模态面板。
答案 0 :(得分:2)
两种解决方案:
第一个解决方案:
从Style="display:none"
删除pnlModalPopup
。
第一个解决方案是在页面首次加载时弹出窗口“闪烁”,然后快速消失。
第二个解决方案:
protected void Page_Load(object sender, EventArgs e)
{
pnlModalPopup.Style["display"] = "block";
modalMessage.Show();
}
<强>建议:强> 我建议使用第二种解决方案,这样模式弹出窗口不会闪烁然后消失。
我刚刚在一个简单的页面中测试了您的代码,该页面仅包含您提供的代码... 它的工作方式与预期相似。
检查以下内容:
UpdatePanel
中定义?Panel
中定义,其可见性设置为false。答案 1 :(得分:0)
在需要时听取Chris的评论:
显示:无需化妆品, 否则弹出窗口将显示 页面正在加载,然后会很快 在ModalPopupExtender中消失 开始并隐藏它。
我们必须像这样制作我们的节目:
pnlModalPopup.Visible = true;
modalMessage.Show();