我对jquery-ui dialog box
有点问题。
问题是,当我关闭对话框,然后单击触发它的链接时,它不会再次弹出,除非我刷新页面。
如何在不刷新实际页面的情况下回调对话框。
下面是我的代码:
$(document).ready(function() {
$('#showTerms').click(function()
{
$('#terms').css('display','inline');
$('#terms').dialog({
resizable: false,
modal: true,
width: 400,
height: 450,
overlay: { backgroundColor: "#000", opacity: 0.5 },
buttons:{ "Close": function() { $(this).dialog("close"); } },
close: function(ev, ui) { $(this).remove(); },
});
});
谢谢
发布于 2008-12-14 19:42:19
我解决了。
我使用销毁而不是关闭函数(它没有任何意义),但它工作。
$(document).ready(function() {
$('#showTerms').click(function()
{
$('#terms').css('display','inline');
$('#terms').dialog({resizable: false,
modal: true,
width: 400,
height: 450,
overlay: { backgroundColor: "#000", opacity: 0.5 },
buttons:{ "Close": function() { $(this).dialog('**destroy**'); } },
close: function(ev, ui) { $(this).close(); },
});
});
$('#form1 input#calendarTEST').datepicker({ dateFormat: 'MM d, yy' });
});
发布于 2009-04-13 22:43:17
实际上,您应该使用$("#terms").dialog({ autoOpen: false });
来初始化它。然后,您可以使用$('#terms').dialog('open');
打开对话框,使用$('#terms').dialog('close');
关闭它。
发布于 2008-12-14 19:37:12
在最后一行,不要使用$(this).remove()
,而要使用$(this).hide()
。
编辑:为了澄清,在close click事件中,您将从DOM中删除#terms
div,这就是它不会返回的原因。你只需要把它隐藏起来。
https://stackoverflow.com/questions/366854
复制相似问题