我有一个 JQuery 对话框,它具有刷新父窗口的 beforeclose 处理程序方法:
$( "#dialog" ).dialog({
beforeclose: function(event, ui) {
refreshParent();
}
});
对话框一旦打开,就可以从多个位置关闭。每次关闭对话框时,都会调用 refreshParent() 方法。
现在我需要检查是否在某些情况下关闭对话框,不应该调用 refreshParent()。
这样做的一种方法是放置一个如下所示的全局标志:
$( "#dialog" ).dialog({
beforeclose: function(event, ui) {
if(doRefreshParent)
refreshParent();
}
});
并在调用对话框关闭之前将 doRefreshParent 设置为 true 或 false。但这似乎不是一个好方法。
有什么方法可以在 beforeclose 处理程序中检查调用对话框关闭的位置(即被点击的元素的 id,因为发生了对话框关闭)。这样我们就可以控制 refreshParent() 的调用。