主页面:
<input id="btnAdd" type="button" onclick="openWin();" value="添加" />
在js中有如下代码:
function openWin() {
window.open('addInfo.jsp', '_blank',
'width=300,height=400,top=200,left=400');
}
//定义callback方法,用于回调
function callback() {
refreshWin();
}
//刷新当前页面
function refreshWin() {
//调用刷新页面的方法,此处RefreshSocket为刷新页面对应的方法,也就是说,如果页面有个刷新按钮,则,点击按钮提交的类名就是此处的类名
var url = 'RefreshSocket';
window.location.href = url;
}
在addInfo.jsp页面有如下代码:
<form name="form" action="AddSocket" method="get">
<input id="onSub" type="button" onclick="formSubmit();" value="确定">
</form>
function formSubmit(){
this.form.submit();//提交action到AddSocket类
window.opener.callback();//上述执行完成后,调用打开页面的callback方法,此处是调用主页面的callback方法
window.close();//当前页面关闭
}
另外,如果是像删除这样的操作,直接从一个jsp跳转到一个类中,在类中执行一系列操作后,如果想刷新当前页面,那么,可以直接在类中书写跳转语句即可,如下所示:
主页面mainPage.jsp:
//删除操作关联后台的DeleteSocket类,如果要传参数,用?即可
window.location.href = DeleteSocket
DeleteSocket类页面:
//执行一系列操作后,可以直接书写JavaScript代码,写完这句话后就可以直接跳转到主页面并刷新主页面
out.print("<script type='text/javascript'>location.href='mainPage.jsp'</script>");
本文介绍了如何在JavaScript中处理子页面执行完成后的父页面刷新问题。通过`window.open`创建子页面,并在子页面操作结束后调用`window.opener.callback`方法触发父页面的回调函数,实现父页面的刷新。示例代码包括子页面的提交和关闭,以及父页面的刷新逻辑。对于像删除这样的操作,可以直接在处理类中返回跳转到父页面的JavaScript语句来刷新页面。
516

被折叠的 条评论
为什么被折叠?



