我已经制作了一个.aspx页面来上传图片文件。
第1页 - 从那里我在js中使用window.open(像对话框这样的小尺寸)打开Page2.aspx。
然后在第2页Javascript我在WindowRefresh()函数下面刷新第1页并关闭第2页(文件上传完成后)。
这就是我使用'window.opener.location.href'来引用父页面(页面1)的原因。
在第2页中,我在Windowrefresh()函数下面刷新父窗口,它将关闭上传对话框窗口。
function Windowrefresh() {
if (window.navigator.appName == "Netscape") {
window.opener.location.href = window.opener.location.href;
window.opener.location.reload(true);
self.close();
}
else if (window.navigator.appName == "Microsoft Internet Explorer") {
window.opener.location.href = window.opener.location.href;
window.opener.location.reload(true);
window.close();
}
}
现在,当一个会话变量有一些值时,我想从第2页的代码中调用此函数。
我尝试了下面的事情。
ClientScript.RegisterStartupScript(this.GetType(), "key", "Windowrefresh();", true);
和
Page.ClientScript.RegisterStartupScript(this.GetType(), "Call my function", "Windowrefresh()", true);
但它既不令人耳目一新也不会结束。
我不确定这有什么问题。
答案 0 :(得分:0)
做这样的事情..我还没有测试代码......在子窗口中
<body onunload="refreshParent();">
function refreshParent() {
window.opener.location.href = window.opener.location.href;
if (window.opener.progressWindow)
{
window.opener.progressWindow.close()
}
window.close();
}
当你有会话变量时关闭子窗口...(我不知道asp因此无法帮助你解决这个问题)