javascript 父窗口、子窗口传值问题

javascript父子窗口传值其实很简单,主要就是涉及到一个怎么找到子窗口,怎么找到父窗口的问题。

 

先说一下子窗口,子窗口通过window.open()方法创建,创建完毕其实是有返回值的,这个返回值就是子窗口了。

 

var child = window.open(...);

 

这样“child”就是子窗口,于是就可以通过下面方式操作子窗口:

 

win.document.getElementById("child").value = .....;

 

子窗口创建以后,找父窗口也很简单:window.opener就代表父窗口,于是我们可以:

 

window.opener.document.getElementById("parent").value = ...;

 

上面说的都是操作dom,调用函数也一样:

 

win.childFunction();

window.opener.parentFunction();

 

好了下面是具体的代码例子,大家可以下载看一下。

 

ps:上次研究过这个问题了,不过未记录,结果换系统的网页丢失了,重新找有用了不少时间,因此在这里记录一下。

 

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

 

如果打开的窗口参数比较多,可以通过form提交到子窗口来完成,首先打开一个空白窗口,然后将form的target只想child窗口,然后就可以submit了。

 

child = window.open("");

form.target = child;

form.submit();

 

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

 

折腾了一顿,发现通过form新窗口打开的页面,本身两个页面就是父子关系,唯一的缺点就是父窗口没有办法找到子窗口,但是子窗口可以通过window.opener找到父窗口.......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值