如何从另一个Popup Extender禁用AJAX Popup Extender?

时间:2011-08-02 04:42:05

标签: asp.net ajax asp.net-ajax

我在我的页面中使用ModalPopupExtender1来编辑一些信息这是我正在使用的面板包含一些文本框和一个上传照片的链接 单击此链接时,将打开一个新的ModalPopupExtender2以上载文件 当我打开第一个pop扩展器时,我可以禁用页面 使用此脚本

.modalBackground 
    {
        background-color:Black;
        filter:alpha(opacity=70);
        opacity:0.7; 
    }

我无法使用相同的代码禁用我的第一个Popupextender 我想要的是在我的第二个popupextender打开时禁用我的第一个popupextender

1 个答案:

答案 0 :(得分:0)

我对ModalPopupExtender的处理将它包装在面板和更新面板中:

<asp:Button ID="btnShowPopup" runat="server" style="display:none" />
<asp:ModalPopupExtender ID="mdlPopup" runat="server" TargetControlID="btnShowPopup" PopupControlID="upModal" BackgroundCssClass="modalBackground" />

<asp:Panel ID="pModal" runat="server" width="450px">
    <asp:UpdatePanel ID="upModal" runat="server" UpdateMode="Conditional">
       <ContentTemplate>
       MODAL CONTENTS HERE
       </ContentTemplate>
    </asp:UpdatePanel>
</asp:Panel>

然后我可以调用模态和更新面板的.Show()和.Hide()方法。您应该可以在编辑信息模式中执行以下操作:

Protected Sub btnUploadFile_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnUploadFile.Click
   mdlEditInfo.Hide()
   mdlUploadFile.Show()
End Sub

然后,您可以在模式之间来回切换,并在需要时通过UpdatePanel更新它们。

 Protected Sub btnUploadDone_Click(ByVal sender as Object, ByVal e As System.EventArgs) Handles btnUploadDone.Click
   lblStatus.Text = "File uploaded successfully" 'control in the UpdatePanel for the EditInfo modal
   upEditInfo.Update()

   mdlUploadFile.Hide()
   mdlEditInfo.Show()