【发布时间】:2012-04-19 21:36:59
【问题描述】:
我有一个 jQuery UI 对话框,可以在我的 aspx.page 中很好地工作
我的问题是我需要将页面的一部分移动到用户控件中。我将 div 和 jquery 移动到用户控件。控件弹出正常,但是服务器端控件触发。
这是我弹出对话框的代码。
var $partyaddress = $('#addressinformationcontent').dialog({
autoOpen: false,
modal: true,
height: 450,
width: 850,
title: 'Party Address Information'
});
$('#addressopener').click(function () {
$('#addressinformationcontent').parent().appendTo($("form:first"));
$partyaddress.dialog('open');
return false;
});
对话框中弹出的我的div是:
<div id="addressinformationcontent">
<asp:UpdatePanel ID = "updatePanelAddress" runat="server">
<ContentTemplate>
//some asp controls here and a asp.net submit button
/ContentTemplate>
</asp:UpdatePanel>
</div>
我想我理解这个问题。 jquery 使用 DOM 将对话框移动到 Form 标签之外,我需要将它们添加回来。我在单击函数中的行将其附加回“表单”,但用户控件没有表单标记。奇怪的是,当我第一次弹出对话框时,我必须在对话框上按下一个按钮来加载工作正常并加载字段的表单字段。在对话框的第一次回发后,所有服务器端控件都停止工作。我不知道如何解决这个问题。任何帮助将不胜感激
【问题讨论】:
-
我是因为你正在使用 updatepannel
-
我尝试删除更新面板,但没有任何区别。 addressopener 是一个超链接控件,效果很好并且会弹出对话框。它是不会触发的对话框中的服务器端回发控件。