我有一个带刺的。我有一个 ASP.NET Web 表单页面。在页面中,我有一个 div 标签,我已将其设置为用作 jQuery 对话框。 div 中是一些 jQuery 控件。我打开对话框并单击其中一个按钮开始回发。当页面回发时,隐藏代码尚未读取控件中的值。当然,稍微深入研究一下 html 就会发现,该对话框将我的 div 移至 html 页面的底部,位于我的 asp.net 表单标记之外。乌尔克!
我到底该如何解决这个问题?
并不是说它真的对我的对话框代码有帮助,这里的代码是:
$("#dialog-copy").dialog({
autoOpen: false,
height: 200,
width: 400,
modal: true,
resizable: false,
buttons: {
'Cancel': function () {
$(this).dialog('close');
},
'Yes': function () {
$(this).dialog('close');
$("[id*=btnCopy]")[0].click();
}
},
open: function () {
$(":button:contains('Yes')").addClass("blue");
}
});
$("[id*=btnCopy]").live('mousedown', function (e) {
e.preventDefault();
$("#dialog-copy").dialog('open');
});
典型的 div 标签(移至表单标签之外)如下所示:
<div id="dialog-copy" style="DISPLAY: none" title="Copy Schedule">
<p>Please enter a schedule number:</p>
<asp:Textbox runat="server" id="txtSchNo"></asp:Textbox>
</div>
单击“是”将触发调用回发的按钮。
这是一个已知问题,您必须将其附加到这样的表单中,并且您的普通 .NET 控件可以回发:
open: function () {
$(this).parent().appendTo("form");
$(":button:contains('Yes')").addClass("blue");
}
更新 jQuery 的新版本:
$('#yourDIv').dialog({
.....,
appendTo: $('form'),
....
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)