Jquery 关闭包含.ascx(用户控制)的ModalPopupXtender

Jquery 关闭包含.ascx(用户控制)的ModalPopupXtender,jquery,asp.net,.net,modalpopupextender,Jquery,Asp.net,.net,Modalpopupextender,我有一个ModalPopupXtender,其中包含用户控件(.ascx)。 我想使用用户控件(.ascx)中的按钮单击关闭弹出窗口。 我想在客户端(Jquery、Javascript)上实现 ModalPopupXtender: <asp:HiddenField ID="hidPopup" runat="server" /> <ajaxToolkit:ModalPopupExtender ID="Surface1ModulePopup" PopupControlID=

我有一个ModalPopupXtender,其中包含用户控件(.ascx)。
我想使用用户控件(.ascx)中的按钮单击关闭弹出窗口。
我想在客户端(Jquery、Javascript)上实现

ModalPopupXtender:

<asp:HiddenField ID="hidPopup" runat="server" />
    <ajaxToolkit:ModalPopupExtender ID="Surface1ModulePopup" PopupControlID="divPopup"
     runat="server" TargetControlID="hidPopup" CancelControlID="btnimageclose" >
    </ajaxtoolkit:ModalPopupExtender>
    <div id="divPopup" class="over_line" style="visibility:hidden;">
        <div class="TxConsultPopUp_Window" style="background-color: #f2fbff; height: 235px;
            width: 156px; border: 1 px solid #4490d2; margin-left: -140px; margin-top: 0px;">
            <div class="forg_head">
                <div class="head_txt" style="width: 119px; text-align: left;">
                    Surface Selections</div>
                <div class="close_but" style=" width:26px;">
                    <asp:ImageButton ID="btnimageclose" runat="server"  ImageUrl="images/close.png" OnClientClick="javascript:CloseWin();return false;" />
                </div>
            </div>
            <asp:Panel ID="panel1" runat="server">
              <UC1:Surface id="Surf1Surface" runat="server">
           </UC1:Surface>
           </asp:Panel>
         </div>
     </div>
<ajaxToolkit:ModalPopupExtender ID="showReferences" runat="server" 
CancelControlID="ucShowACarersFeedback$CloseWindow" TargetControlID="reviewsButton" 
PopupControlID="referencesPanel" BackgroundCssClass="ModalPopupBG">

曲面选择
要打开它,我使用了以下方法:

var modalPopupBehaviorCtrl = $find('<%=Surface1ModulePopup.ClientID %>');
modalPopupBehaviorCtrl.show();
var ScheduledTreatments = document.getElementById("divPopup");
ScheduledTreatments.style.visibility = "visible";
var modalPopupBehaviorCtrl=$find(“”);
modalPopupBehaviorCtrl.show();
var ScheduledTreatments=document.getElementById(“divPopup”);
ScheduledTreatments.style.visibility=“可见”;

请帮助我从1天开始等待答案。STACKFLOW专家请回答它

我在这里给出的第一个答案,祝你好运

CancelControlID中使用的ID实际上是控件的整个路径(XPath)的子集,因此如果您扩展该ID以同时包含usercontrol名称,并强制其具有静态名称,则可以引用它

我们正在使用的ASP命名约定以美元符号($)将其分隔开,因此您可以将
CancelControlID=“btnimageclose”
更改为
CancelControlID=Surf1Surface$nameofyourbutton
。(我相信您可以更改所使用的内容,因此您需要检查所使用的渲染内容。)

您还需要在usercontrol中的按钮上设置
ClientIDMode=Static
属性

这适用于我,代码如下:

ModalPopupXtender的定义:

<asp:HiddenField ID="hidPopup" runat="server" />
    <ajaxToolkit:ModalPopupExtender ID="Surface1ModulePopup" PopupControlID="divPopup"
     runat="server" TargetControlID="hidPopup" CancelControlID="btnimageclose" >
    </ajaxtoolkit:ModalPopupExtender>
    <div id="divPopup" class="over_line" style="visibility:hidden;">
        <div class="TxConsultPopUp_Window" style="background-color: #f2fbff; height: 235px;
            width: 156px; border: 1 px solid #4490d2; margin-left: -140px; margin-top: 0px;">
            <div class="forg_head">
                <div class="head_txt" style="width: 119px; text-align: left;">
                    Surface Selections</div>
                <div class="close_but" style=" width:26px;">
                    <asp:ImageButton ID="btnimageclose" runat="server"  ImageUrl="images/close.png" OnClientClick="javascript:CloseWin();return false;" />
                </div>
            </div>
            <asp:Panel ID="panel1" runat="server">
              <UC1:Surface id="Surf1Surface" runat="server">
           </UC1:Surface>
           </asp:Panel>
         </div>
     </div>
<ajaxToolkit:ModalPopupExtender ID="showReferences" runat="server" 
CancelControlID="ucShowACarersFeedback$CloseWindow" TargetControlID="reviewsButton" 
PopupControlID="referencesPanel" BackgroundCssClass="ModalPopupBG">

它弹出的面板

<asp:Panel CssClass="popupConfirmation" ID="referencesPanel" Style="display: none;"
    runat="server">
   <uc:ShowACarersFeedback runat="server" ID="ucShowACarersFeedback" />
</asp:Panel>

控件USSHOWACERS中的按钮将返回

<asp:Button ID="CloseWindow" runat="server" Text="Close Feedback window" ClientIDMode=Static />

请参阅和@PiLHA am在弹出窗口中使用用户控件。我的用户控件包含我要关闭弹出窗口的btn。您的单击在同一页面上具有控件