Javascript 有没有办法知道django视图中的父窗口是否关闭?

Javascript 有没有办法知道django视图中的父窗口是否关闭?,javascript,python,django,httpresponse,Javascript,Python,Django,Httpresponse,我有一个django视图,它应该根据创建当前窗口的父窗口的状态返回HttpResponse。如果父窗口仍然打开,则我要关闭当前窗口并将父窗口重定向到某个url,否则如果父窗口关闭,则我要将新窗口重定向到该url。在我的django观点中,有什么方法可以确定这一点吗 我用Javascript试过这个 if (!window.opener.parent.closed){ window.close(); window.opener.parent.location.href="<u

我有一个django视图,它应该根据创建当前窗口的父窗口的状态返回HttpResponse。如果父窗口仍然打开,则我要关闭当前窗口并将父窗口重定向到某个url,否则如果父窗口关闭,则我要将新窗口重定向到该url。在我的django观点中,有什么方法可以确定这一点吗

我用Javascript试过这个

if (!window.opener.parent.closed){
    window.close();
    window.opener.parent.location.href="<url>";
}
else{
    window.location.href="<url>";
}

但即使父窗口关闭,else块也不会执行,如果父窗口打开,if块工作正常。

如果要处理弹出新窗口的窗口,则应检查window.opener

我将尝试以下代码:

if(window.opener != null && !window.opener.closed) {
  window.opener.location.href="<url>"
  window.close()

}
您可以将else设置为超时,因为父窗口可以在子窗口不知道的情况下随时关闭

var intervalID;

function checkParent() {
    if (window.opener && window.opener.closed) {
        window.clearInterval(intervalID);
        window.opener.location.href="<url>"
    }
}
var intervalID = window.setInterval(checkParent, 500);

你反对用Javascript做这件事吗?