ext中用到iframe时,关于iframe内外取值的方法
1.获取iframe的方法一
var tp = Ext.getCmp('TabPanel'); var tab = tp.getComponent(“tab1的ID”); var frame1 = Ext.get(tab.tabEl).frame(); frame1.Ext.getCmp("ext控件ID"); //取得控件
2.方法二
//子页面获取父页面控件值 var q1=window.parent.Ext.getCmp('bhstdate').getRawValue(); //父页面获取子页面空间 varq2=window.frames["cxjln"].Ext.getCmp("rbcxjl").getValue(); //父页面获取子iframe全局变量 var q3 = window.frames["cxjln"].ctst; //子iframe获取父页面全局变量 var q4 = window.parent.tst1;
3.方法三
1、document.frames["frameName"].document.getElementById("表单文本域").value
2、 window.frames["frameName"].document.getElementById("表单文本域").value
从网上和自己测试尝试大概就这么三种方法,适应不同情况,
本人用的第二种方法,获取值什么的没有问题,还有一点就是iframe
加载的时候获取其控件的值尚未实现,iframe加载时ext加载完成时机不知道,
所以不知道什么时候获取其控件可以得到。
所以在加载iframe时我是用延时函数去等大概加载完了再去获取其控件。
希望高手指点!