2012-02-13 51 views
1

我遇到了一个问题,我在一个页面中添加了两个ajax模块弹出窗口。这两个模式弹出每个做不同的事情。一个是创建,一个是更新。当两个模式弹出时,我的更新按钮不能点击并执行更新代码。当我删除我的创建模式弹出窗口,我的更新工作?任何人都可以告诉我如何使两个弹出窗口存在于同一页面中?在单个页面中添加两个ajax模式弹出窗口

<!--Modal Popup: Create Topic--> 
     <cc1:modalpopupextender ID="ModalPopupExtender1" runat="server" 
     TargetControlID="btnShowPopup" PopupControlID="pnlCreatePopup" 
     CancelControlID="btnCancel" BackgroundCssClass="modalBackground"> 
     </cc1:modalpopupextender> 

     <asp:Panel ID="pnlCreatePopup" runat="server" CssClass="createModalPopup"> 


<!--Modal Popup: Update Topic--> 
    <asp:Button ID="bnUpdateShow" runat="server" style="display:none;" /> 

     <cc1:ModalPopupExtender ID="ModalPopupExtender2" runat="server" TargetControlID="bnUpdateShow" PopupControlID="pnlpopup" CancelControlID="btnUpdateCancel" BackgroundCssClass="modalBackground"> 
     </cc1:ModalPopupExtender> 

    <asp:Panel ID="pnlpopup" runat="server" CssClass="topicModalPopup"> 
+1

我不认为你可以。这就像有两个文本框同时关注焦点。 – 2012-02-13 04:52:32

+0

我已经使用jquery工具覆盖 - http://flowplayer.org/tools/overlay/index.html将两个模式弹出窗口放在一个页面上。当然,你不能同时显示两个模态,因为“模态”的定义包括一次只能有一个的规定。我的2个弹出窗口在不同的时间显示在同一页面上。 – 2012-02-13 05:31:10

+0

在不同的时间弹出。但仍不能 – lixi 2012-02-13 05:32:08

回答

0

我解决了这个隐藏在配置为visible = false的面板内弹出的ajax。我在codeBehind中激活弹出窗口。这里是一些代码:

<asp:LinkButton runat="server" ID="lbCredits1" Font-Underline="true" 
     CausesValidation="false" OnClick="btMpeCredits_Click">Credits</asp:LinkButton> 
     &nbsp;|&nbsp; 
     <asp:LinkButton runat="server" ID="lbPrivacy2" Font-Underline="true" 
     CausesValidation="false" OnClick="btMpePrivacy_Click">Privacy</asp:LinkButton> 

<%--AjaxPopUpExtenderArea--%> 
<asp:Panel ID="pnlAjaxArea" runat="server" Visible="false"> 
<%--PrivacyMPE--%> 
    <%--I have to hide the link button referenced in the AjaxPopUpExtender. I will use a different button to show the pop up--%> 
    <div style="display:none;"> 
    <asp:LinkButton runat="server" ID="lbPrivacy" Text="PRIVACY"/> 
    </div> 
     <asp:ModalPopupExtender ID="MpePrivacy" runat="server" TargetControlID="lbPrivacy" 
      PopupControlID="PnlPrivacy" BackgroundCssClass="modalBackground" > 
     </asp:ModalPopupExtender> 
     <asp:Panel runat="server" ID="PnlPrivacy" Height="500px" Width="600px" BorderStyle="Solid" 
      BorderColor="#1E549E" BorderWidth="3px" BackColor="#FFFFFF" ScrollBars="Auto"> 
      <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
       <tr> 
        <td> 
         <UcPrivacy:Privacy runat="server" ID="Privacy" /> 
        </td> 
       </tr> 
       <tr> 
        <td align="center"> 
         <asp:ImageButton ImageUrl="~/App_Themes/GfRegistrationPage/images/chiudi-btn.gif" runat="server" OnClick="btMpeClose" 
          CausesValidation="False" /> 
         <br /> 
         <br /> 
        </td> 
       </tr> 
      </table> 
     </asp:Panel> 
<%--CreditsMPE--%> 
    <div style="display:none;"> 
    <asp:LinkButton runat="server" ID="lbCredits" Text="credits"/> 
    </div> 
     <asp:ModalPopupExtender ID="MpeCredits" runat="server" TargetControlID="lbCredits" 
      PopupControlID="PnlCredits" BackgroundCssClass="modalBackground" > 
     </asp:ModalPopupExtender> 
     <asp:Panel runat="server" ID="PnlCredits" Height="500px" Width="600px" BorderStyle="Solid" 
      BorderColor="#1E549E" BorderWidth="3px" BackColor="#FFFFFF" ScrollBars="Auto"> 
      <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
       <tr> 
        <td> 
         <UcCredits:Credits runat="server" ID="Credits" /> 
        </td> 
       </tr> 
       <tr> 
        <td align="center"> 
         <asp:ImageButton ImageUrl="~/App_Themes/GfRegistrationPage/images/chiudi-btn.gif" runat="server" OnClick="btMpeClose" 
          CausesValidation="False" /> 
         <br /> 
         <br /> 
        </td> 
       </tr> 
      </table> 
     </asp:Panel> 
</asp:Panel> 

和这里的一些代码背后:

#region ModalPopUpS Privacy credits 
protected void btMpePrivacy_Click(object sender, EventArgs e) 
{ 
    pnlAjaxArea.Visible = true; 
    AjaxControlToolkit.ModalPopupExtender modalPop = ((AjaxControlToolkit.ModalPopupExtender)(this.Master.FindControl("ContentPlaceHolder1").FindControl("MpePrivacy"))); 
    modalPop.Show(); 
} 
protected void btMpeCredits_Click(object sender, EventArgs e) 
{ 
    pnlAjaxArea.Visible = true; 
    AjaxControlToolkit.ModalPopupExtender modalPop = ((AjaxControlToolkit.ModalPopupExtender)(this.Master.FindControl("ContentPlaceHolder1").FindControl("MpeCredits"))); 
    modalPop.Show(); 
} 
protected void btMpeClose(object sender, EventArgs e) 
{ 
    pnlAjaxArea.Visible = false; 
} 
#endregion 
相关问题