0

我在我的页面中使用模型弹出扩展器。我创建了一些规​​则。如果该规则为真,则显示模型弹出扩展器,否则将其隐藏。我使用以下代码显示模型弹出扩展器。

        <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">
            .......

我的问题是当规则条件为假时,它只会在几分之一秒内显示和消失。我怎样才能减少它。

4

1 回答 1

2

由于您的 ModalPopupExtender 的TargetID是您的LinkButton Id,无论 RULE 是什么,它都会在检查该 RULE 之前始终显示。解决方案是添加一个HiddenField并将其 ID 作为TargetID 传递给 ModalPopupExtender。这样,您可以在单击 LinkBUtton 时检查 RULE 并用于ModalPopupExtender.Show()显示弹出窗口。

<asp:HiddenField ID="hdnpop" runat="server" />

<asp:ModalPopupExtender runat="server" ID="modelPopupExtender1" TargetControlID="hdnpop"
            PopupControlID="pan_addEdit" BackgroundCssClass="modalBackground">
</asp:ModalPopupExtender>

在 LinkBut​​ton 事件中,

if(RULE)
{//Do something
    modelPopupExtender1.Show()
}
else
{
   //Do something else an dont Show()
}
于 2012-08-03T04:44:06.097 回答