日期:2014-05-18  浏览次数:20708 次

关闭子页面刷新父页面问题
当我点击子页面的关闭按钮,或者,点击页面右上角的“X”时,离开本子页面,此时刷新父页面重新查询,其中不允许弹出刷新页面的对话框!我原本在关闭按钮的click事件里写上window.opener.accuseBaseForm.submit();,可以实现,但是点击页面右上角的“X”时,就没有实现刷新父页面,我改在 <body   onunload= "window.opener.accuseBaseForm.submit() ",当点子页面任何一个按钮时,父页面就刷新了,我不需要这样的效果,只需要点击子页面的关闭按钮,或者,点击页面右上角的“X”时,离开本子页面,此时刷新父页面重新查询,js高手赐教。。。

------解决方案--------------------
先把子窗口在父窗口上设置为全局变量,然后在子窗口上触发你的onunload事件,这个事件触发父窗口上的一个方法,在这个方法里你判断一下,你的子窗口是否被关闭了,如果关闭了的话,你就刷新你的父窗口,否则就不用作处理。我没有试验,应该可以实现
------解决方案--------------------
父窗体:
var childWindow;//(全局)

function research(){
if(childWindow==null || childWindow.closed){
ToDo:刷新;
}
}

childWindow=window.open(...);//打开子窗体

子窗体:
onunload= "window.opener.research() "

--------------------------------------------------
我做的网站(www.ju1ju.net)聚会策划助手
有时间帮我测试一下,非常感谢!

特点:自动通过邮件/手机短信/msn/qq联系朋友
架构:webwork2 spring ibatis tomcat5.5 mysql ajax javascript
------解决方案--------------------
子页中:
function window.onbeforeunload(){
window.opener.refreshPage();
}

父页中:
function refreshPage(){
window.location.reload();
}
------解决方案--------------------
3楼的答案只能用于IE浏览器...
有支持其他浏览器的技术吗?