JQuery Dialog 最近给我带来了很多痛苦。 我有以下要弹出的 div。 (忽略类在语法中不显示双引号)
TABLE class=widget-title-table border=0 cellSpacing=0 cellPadding=0>
<TBODY>
<TR>
<TD class=widget-title><SPAN class=widget-title>Basic Info</SPAN></TD>
<TD class=widget-action>
<DIV id=edit-actions jQuery1266325647362="3">
<UL class="linkbutton-menu read-mode">
<LI class="control-actions">
<A id="action-button" class="mouse-over-pointer linkbutton">Delete this stakeholder</A>
<DIV id="confirmation" class="confirmation-dialog title=Confirmation">
Are you sure you want to delete this stakeholder?
</DIV>
</LI></UL></DIV></TD></TR></TBODY></TABLE>
用于此的 JQuery 是...
$(document).ready(function() {
$('#confirmation').dialog({
bgiframe: true, modal: true, autoOpen: false, closeOnEscape: false,
draggable: true, position: 'center', resizable: false, width: 400, height: 150
});
});
对话框是由
打开的var confirmationBox = $('#confirmation',actionContent);
if (confirmationBox.length > 0) {
//Confirmation Needed
$(confirmationBox).dialog('option', 'buttons', {
'No': function() {
$(this).dialog('close');
},
'Yes': function() {
$('ul.read-mode').hide();
$.post(requestUrl, {}, ActionCallback(context[0], renderFormUrl), 'json');
$(this).dialog('close');
}
});
$(confirmationBox).dialog('open');
}
问题始于初始化本身。
加载文档时,<div #confirmation>
已从标记中删除!
我之前遇到过类似的问题,但我不能在这里使用该解决方案。
在此页面上我可以有多个 PopUp div。
当我在打开它之前添加初始化时;表格弹出。但是当我关闭它之后,div就被删除了;所以我无法再次看到弹出窗口。
最佳答案
您看到它删除#confirmation的原因是因为$("#foo").dialog()
会将#foo从DOM中的任何位置移动到文档的底部创建最初隐藏的对话框样式的包装元素内部。据了解,对话框在打开之前是隐藏的。
关于Jquery 对话框 - div 初始化后消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2272961/