Asp.net 更新面板中的多模式弹出扩展程序

Asp.net 更新面板中的多模式弹出扩展程序,asp.net,asp.net-ajax,updatepanel,modalpopupextender,Asp.net,Asp.net Ajax,Updatepanel,Modalpopupextender,我在更新面板中有两个模式弹出扩展程序。问题是,当我调用任何模式弹出窗口的show方法时,两个弹出窗口都会显示出来 请让我知道我们如何解决这个问题?提前感谢。我猜在没有看到任何代码的情况下,您将它们绑定到了同一个控件 <asp:button id="SAME_ID" runat="server" /> <ajaxtoolkit:modalpopupextender id="ModalPopupExtender" runat="server"

我在更新面板中有两个模式弹出扩展程序。问题是,当我调用任何模式弹出窗口的show方法时,两个弹出窗口都会显示出来


请让我知道我们如何解决这个问题?提前感谢。

我猜在没有看到任何代码的情况下,您将它们绑定到了同一个控件

<asp:button id="SAME_ID" runat="server" />

<ajaxtoolkit:modalpopupextender 
    id="ModalPopupExtender" 
    runat="server"    
    targetcontrolid="SAME_ID"> 
</ajaxtoolkit:modalpopupextender> 

<ajaxtoolkit:modalpopupextender 
    id="ModalPopupExtender2" 
    runat="server"    
    targetcontrolid="SAME_ID"> 
</ajaxtoolkit:modalpopupextender> 

您需要多个MPE吗?如果您试图根据用户交互或数据状态显示不同的窗体,请考虑在单个MPE的边界内移动更新面板,然后显示/隐藏包含内容块的占位符(或面板)。 MPE是非常沉重的客户端,将它们放在更新面板中可以确保在更新面板更新时发送大量代码和标记。MPE也非常脆弱,如果它们在地面移动时不能正常工作(比如更新面板更新时),我也不会感到惊讶。然而,他们对自己内心内容的变化做出了相当好的反应。如果内容块大小不同,您可能会遇到背景和阴影问题,但这些都是可配置的


你也应该考虑移动到jQuery对话框而不是MPES。它们更干净、更健壮、更容易处理、更灵活,而且只缺少一些功能,如事件访问的轻松代码隐藏,但这是一个值得权衡的问题。

请发布一些代码。