当 ajax 操作失败时,我会创建一个包含错误的新 div,然后将其显示为对话框。当对话框关闭时,我想完全销毁并再次删除 div。我怎样才能做到这一点?我的代码目前看起来像这样:
$('<div>We failed</div>')
.dialog(
{
title: 'Error',
close: function(event, ui)
{
$(this).destroy().remove();
}
});
当我运行此对话框时,对话框会正确显示,但当我关闭它时,对话框在 html 中仍然可见(使用 FireBug)。我在这里缺少什么?我忘记了什么?
更新:刚刚注意到我的代码在 Firebug 控制台中出现错误。
$(this).destroy is not a function
有谁能帮帮我吗?
更新:如果我只执行 $(this).remove()
,该项目将从 html 中删除。但它是否完全从 DOM 中删除了呢?或者我是否也需要先调用该销毁函数?
最佳答案
$(this).dialog('destroy').remove()
这将销毁对话框,然后从 DOM 中完全删除“托管”对话框的 div
关于jquery-ui - 如何在关闭时完全删除对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2864740/