我有一个多刺的.我有一个asp.net网页表单页面.在页面中,我有一个div标签,我已将其设置为用作jQuery对话框.在div中有一些jQuery控件.我打开对话框,然后点击其中一个按钮开始回发.当页面回
我该怎么回事呢?
并不是说我的对话框代码真的有助于这种情况:
$("#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'), .... });