首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

js怎的通过界面,跨框架取值

2012-12-17 
js怎样通过界面,跨框架取值?本帖最后由 xiaolongit 于 2012-08-31 23:09:57 编辑主要是嵌套框架,所以琢磨

js怎样通过界面,跨框架取值?
本帖最后由 xiaolongit 于 2012-08-31 23:09:57 编辑 主要是嵌套框架,所以琢磨了好久没弄出来。
index.aspx  由两个框架组成 :
<iframe name="topR" src="top.aspx" ><iframe>,<iframe name="centerR" src="center.aspx" ><iframe>
center.aspx 也由两个框架组成:
<iframe name="leftR" src="left.aspx" ><iframe>,<iframe name="rightR" src="right.aspx" ><iframe> 

需求:点击了名称为rightF框架里的某一个按钮时弹出一个界面,弹出的界面位置位于框架的等级框架,也就是在index.aspx

之上,现在想给right.aspx界面中的某一个控件赋值。

parent.document.getElementById('rightR').contentWindow.document.getElementById('txt11').value="1x2y";  

//txt11是一个textbox控件,提示错误:对象为空

我在想,是不是应该parent.centerR.rightR.document.getElement.......这种模式随着父级再找到子级框架再找到控件啊?

但是不知道怎么实现。。高手求救呀,在线等.......
[解决办法]
要先获取centerR的document,然后再获取到rightR的document才能调用getElementById,嵌套了多少iframe就得继续获取他父级的document,你的iframe添加ID,name不能用document.getElementById

<iframe name="topR" id="topR" src="top.aspx" ></iframe>,<iframe name="centerR" id="centerR" src="center.aspx" ></iframe>
center.aspx 也由两个框架组成:
<iframe name="leftR" id="leftR" src="left.aspx" ></iframe>,<iframe name="rightR" id="rightR" src="right.aspx" ></iframe>  


document.getElementById('centerR').contentWindow.document.getElementById('rightR').contentWindow.document.getElementById('txt11').value="1x2y";

热点排行