javascript关于open.window子页面执行完成后刷新父页面的问题分析
本文实例分析了javascript关于open.window子页面执行完成后刷新父页面的方法。分享给大家供大家参考。具体分析如下:
主页面:
<inputid="btnAdd"type="button"onclick="openWin();"value="添加"/>
在js中有如下代码:
functionopenWin(){
window.open('addInfo.jsp','_blank',
'width=300,height=400,top=200,left=400');
}
//定义callback方法,用于回调
functioncallback(){
refreshWin();
}
//刷新当前页面
functionrefreshWin(){
//调用刷新页面的方法,此处RefreshSocket为刷新页面对应的方法
//也就是说,如果页面有个刷新按钮,
//则点击按钮提交的类名就是此处的类名
varurl='RefreshSocket';
window.location.href=url;
}
在addInfo.jsp页面有如下代码:
<formname="form"action="AddSocket"method="get"> <inputid="onSub"type="button"onclick="formSubmit();"value="确定"> </form>
functionformSubmit(){
this.form.submit();
//提交action到AddSocket类
window.opener.callback();
//上述执行完成后,调用打开页面的callback方法,
//此处是调用主页面的callback方法
window.close();//当前页面关闭
}
另外,如果是像删除这样的操作,直接从一个jsp跳转到一个类中,在类中执行一系列操作后,如果想刷新当前页面,那么,可以直接在类中书写跳转语句即可,如下所示:
主页面mainPage.jsp:
//删除操作关联后台的DeleteSocket类,如果要传参数,用?即可 window.location.href=DeleteSocket
DeleteSocket类页面:
//执行一系列操作后,可以直接书写JavaScript代码 //写完这句话后就可以直接跳转到主页面并刷新主页面
out.print("<scripttype='text/javascript'>location.href='mainPage.jsp'</script>");