C# UpdatePanel中具有默认表单值的ModalPopup

C# UpdatePanel中具有默认表单值的ModalPopup,c#,asp.net-ajax,updatepanel,ajaxcontroltoolkit,modalpopupextender,C#,Asp.net Ajax,Updatepanel,Ajaxcontroltoolkit,Modalpopupextender,我在UpdatePanel中有一个ModalPopupXtender,它打开一个输入表单。问题是,当我单击“编辑”按钮(也在UpdatePanel中)时,我希望使用服务器端代码用现有值填充表单。但这个按钮的OnClick方法似乎不起作用 我的问题是:如何先运行服务器端代码,然后再显示编辑表单?您需要从服务器端显示ModalPopupXtender。 首先,将ModalPopupXtender的TargetControlID链接到虚拟hiddenfield或带有style=“display:non

我在UpdatePanel中有一个ModalPopupXtender,它打开一个输入表单。问题是,当我单击“编辑”按钮(也在UpdatePanel中)时,我希望使用服务器端代码用现有值填充表单。但这个按钮的OnClick方法似乎不起作用


我的问题是:如何先运行服务器端代码,然后再显示编辑表单?

您需要从服务器端显示ModalPopupXtender。 首先,将ModalPopupXtender的TargetControlID链接到虚拟hiddenfield或带有style=“display:none”而不是“Edit”按钮的按钮。我知道这听起来很愚蠢,但这是一个众所周知的解决办法

然后,确保asp.net的“编辑”按钮设置为asyncpostbacktrigger,如果将children设置为false,则将其设置为asyncpostbacktrigger

还设置CausesValidation=“false”以避免回发被页面上不相关的验证器阻止

最后,在“编辑”按钮的单击事件结束时,调用ModalPopupExtender.Show()以显示弹出窗口