我在我的页面中使用了一个模型弹出扩展器。我创造了一些规则。如果该规则为true,那么show model popup extender否则隐藏它。我使用下面的代码来显示模型popub扩展器。
<asp:ModalPopupExtender runat="server" ID="modelPopupExtender1" TargetControlID="Lnk_1"
PopupControlID="pan_addEdit" BackgroundCssClass="modalBackground">
</asp:ModalPopupExtender>
<asp:Panel ID="pan_addEdit" runat="server" CssClass="pnl">
<asp:LinkButton ID="Lnk_1" runat="server" OnClick="btn_generate_Click" Visible="true"></asp:LinkButton>
<table border="0" width="800px" height="350px">
.......
我的问题是当规则条件为假时,它只会显示并在几分之一秒内消失。我怎样才能减少它。
答案 0 :(得分:2)
由于您的ModalPopupExtender的 TargetID 是您的LinkButton Id
,无论RULE如何,它都会在检查RULE之前显示。
解决方案是添加HiddenField
并将其ID作为 TargetID 传递给ModalPopupExtender。这样,您可以在点击LinkBUtton时查看规则并使用 ModalPopupExtender.Show()
来显示弹出窗口。
<asp:HiddenField ID="hdnpop" runat="server" />
<asp:ModalPopupExtender runat="server" ID="modelPopupExtender1" TargetControlID="hdnpop"
PopupControlID="pan_addEdit" BackgroundCssClass="modalBackground">
</asp:ModalPopupExtender>
在LinkButton事件中,
if(RULE)
{//Do something
modelPopupExtender1.Show()
}
else
{
//Do something else an dont Show()
}