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>");