我在一台服务器上有一个父页面,我将一个子页面称为另一个服务器上的弹出窗口。因此,一旦子页面关闭,我想刷新父页面,所以我在父页面中编写了一个重新加载函数,我试图从子页面调用它:
opener.reload();
但是由于父母在另一台服务器上,这件事不起作用,有什么办法可以做到这一点吗?
我在一台服务器上有一个父页面,我将一个子页面称为另一个服务器上的弹出窗口。因此,一旦子页面关闭,我想刷新父页面,所以我在父页面中编写了一个重新加载函数,我试图从子页面调用它:
opener.reload();
但是由于父母在另一台服务器上,这件事不起作用,有什么办法可以做到这一点吗?
你能告诉我如何打开一个子页面作为弹出?如果通过颜色框或厚框,那么有一个 onClose 事件,您可以在其上编写类似的内容
function()
{
window.location.reload(true);
}
在父页面中尝试这个 Javascript 函数
function GoTopage()
{
var retValue = showModalDialog ("child.aspx", "", "dialogWidth:600px; dialogHeight:300px; dialogLeft:200px;");
if (retValue == null)
{
__doPostBack('', ''); /* For postback */
/*location.reload(); for complete reloading or refreshing*/
}
return false;
}
代替opener.reload
您可以使用submit()
在你的javascript函数中像这样的东西
opener.document.forms[0].submit();
源文档
这并不是一个很好的方法,但这是我能想到的唯一方法,因为有同源策略。
var timer, childWindow = window.open("https://google.ca/");
function hasClosed() {
'use strict';
if (childWindow && childWindow.closed) {
// stop the timer
window.clearInterval(timer);
// do whatever here
console.log('The window has closed');
}
}
// set a timer to continually check if the window has closed
timer = window.setInterval(hasClosed, 1000);