Answers:
您可以使用“ window.opener ” 访问父窗口,因此,在子窗口中编写如下内容:
<script>
window.onunload = refreshParent;
function refreshParent() {
window.opener.location.reload();
}
</script>
popupWindow.closed
使用setInterval
like 进行检查。
弹出窗口没有可监听的关闭事件。
另一方面,当窗口关闭时,有一个closed属性设置为true。
您可以设置一个计时器来检查该关闭的属性,并像这样进行操作:
var win = window.open('foo.html', 'windowName',"width=200,height=200,scrollbars=no");
var timer = setInterval(function() {
if(win.closed) {
clearInterval(timer);
alert('closed');
}
}, 1000);
请参阅此Fiddle工作示例!
在您的子页面上,输入以下内容:
<script type="text/javascript">
function refreshAndClose() {
window.opener.location.reload(true);
window.close();
}
</script>
和
<body onbeforeunload="refreshAndClose();">
但作为一个好的UI设计,您应该使用Close,button
因为它更易于使用。参见下面的代码。
<script type="text/javascript">
$(document).ready(function () {
$('#btn').click(function () {
window.opener.location.reload(true);
window.close();
});
});
</script>
<input type='button' id='btn' value='Close' />
我用这个:
<script language='javascript'>
var t;
function doLoad() {
t = setTimeout("window.close()",1000);
}
</script>
<script type="text/javascript">
function refreshAndClose() {
window.opener.location.reload(true);
window.close();
}
</script>
<body onbeforeunload="refreshAndClose();" onLoad='doLoad()''>
当窗口关闭时,它会刷新父窗口。
window.open将返回对新创建的窗口的引用,只要打开的URL符合Same Origin Policy。
这应该工作:
function windowClose() {
window.location.reload();
}
var foo = window.open("foo.html","windowName", "width=200,height=200,scrollbars=no");
foo.onbeforeunload= windowClose;
就我而言,我在父页面的链接按钮上单击打开了一个弹出窗口。在使用关闭子项时刷新父项
window.opener.location.reload();
在子窗口中导致重新打开子窗口(可能是因为我猜是View状态。如果我错了,请纠正我)。因此,我决定不重新加载父页面,并再次为其分配相同的URL来加载页面。
为了避免在关闭弹出窗口后再次打开弹出窗口,这可能会有所帮助,
window.onunload = function(){
window.opener.location = window.opener.location;};
如果您的应用程序在启用HTML5的浏览器上运行。您可以使用postMessage。此处给出的示例与您的示例非常相似。
您可以在步骤完成后使用父命令(主页是窗口)访问主页。
function funcx() {
var result = confirm('bla bla bla.!');
if(result)
//parent.location.assign("http://localhost:58250/Ekocc/" + document.getElementById('hdnLink').value + "");
parent.location.assign("http://blabla.com/" + document.getElementById('hdnLink').value + "");
}