怎么在新窗口调用父窗口

来源:8-1 window对象

谁心态决定成败

2016-10-26 20:31

调用父窗口的信息

写回答 关注

1回答

  • 慕莱坞9220042
    2016-10-26 20:34:14
    已采纳

    通常使用window.open的方式开启新窗口的话
    要取得父窗口的控件,可以用window.opener来取得父窗口

    然而如果使用showModalDialog的话...却无效
    如果有需要的话,需要修改开启的语法以及showModalDialog中的语法

    开启语法第2个参数请下self,范例如下

    var rc=window.showModalDialog(strURL,self,sFeatures);

    然后接着就是呼叫父窗口的语法

    var pWindow=window.dialogArguments;

    这样就可以取得父窗口的window对象控制了。例如:

    window.dialogArguments.document.getElementsByName("processId")[0].value;

    ------------------------------------------

    父窗口代码:window.showModalDialog('login.jsp', window);//这个window作为参数传递到子窗口,当登录成功后可通过这个对象刷新父窗口 
    子窗口代码: 
    window.dialogArguments.document.location.reload();//刷新父窗口 
    window.close(); //关闭自己 

    还有一个关键代码: 
    <base target="_self"> 
    如果不加这段代码,在登录返回之后会打开一个新窗口


JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题