在iframe中如何调用父窗体的方法

在iframe中如何调用父窗体的方法,第1张

iframe里面的页面调用父窗口,左右窗口js函数方法

实现iframe内部页面直接调用该iframe所属父窗口自定义函数的方法。

比如有A窗口,A内有个IFRAME B,B里面的装载的是C页面,这时C要直接调用A里面的一个自定义函数AFUN();

那么只要在C页面中写如下JS函数就可以了:

windowparentAFUN();

如果AFUN()有参数也可以直接传递合适的参数进去。

例如:

修改父窗口控件属性

windowparentdocumentgetElementById('frmright')src=windowparentdocumentgetElementById('frmrightsrc')value;

调用父窗口函数

windowparentPOPUP('bigFram');

父窗口调用iframe子窗口方法

<iframe name="myFrame" src="childhtml"></iframe>

myFramewindowfunctionName();

iframe子窗口调用父窗口方法

parentfunctionName();

////////////////////////////////////

用js互相调用iframe页面内的js函数

一个html页面,分成左右两块,左边为导航栏,右边为需要显示的内容,代码如下:

左栏的代码为:

<IFRAME frameBorder=0 id=frmTitleLeft name=framLeft src="lefthtml" style="HEIGHT: 100%; width:180px;">

连接到lefthtml

比如右栏中有一个函数right(),我要在左栏的链接中调用right()函数,该如何实现呢

1,首先leftframe是内嵌在容器页indexhtml中的,因此需要先返回到index这一级别,并取得rightframe对象

var frames=windowparentwindowdocumentgetElementById("frameid");

2,要能执行其页面中的函数,必须要获得window对象,这里有一个重要的对象contentWindow,获得这个对象,即可执行其中的函数了,如

framescontentWindowright();

以上代码兼容IE6,Firefox3,chrome20,均成功通过测试,IE7没试过,不过应该没问题。

3例如:

windowparentdocumentgetElementById('leftFrame')contentWindowJSMenu('MenuUl'+Sid);

windowparentframes["leftFrame"]JSMenu('MenuUl'+Sid);

////////////////////////////////////////

还有下面一种,没测试过

并不是象通常那样iframeNametest();——test()为iframe里的方法。因为要写一个通用一点的东西,所以是从一个配置文件中动态获取到iframe的id。然后调用里面的方法。可是不成功。相烦帮忙看一看。代码如下:

<iframe id="iframe1"></iframe>

var cs = documentall;

for(var i = 0; i < cslength; i++) {

if(cstagNametoUpperCase() == "IFRAME") {

if(csid == "iframe1") {

alert(frmDealData);

alert(cs);

documentframesiframe1setScreenletStatus(iframeLayoutLvl);

documentframescssetScreenletStatus(iframeLayoutLvl);

}

}

}

var value=openerdocumentname1nam2value;

上面是js代码,就获取的父框架中的一个input元素的值,有两个参数,第一个“name1”是父框架中 form 表单的 name值,第二个“name2”是父框架中 form表单里面的那个input表单的 name值!

可以获取也可以直接设置父框架中 input 的值。

获取父级页面,你只需获取到父级的window就可以做获取数据 *** 作,windowparent即为iframe获取父级页面window的方法。

想要获取iframe被替换的ajsp的数据,如果数据比较大,你就保存在父级window里面;数据较小比如是一个字符串之类的,那就在你ajsp *** 作locationhref改变为bjsp时将数据带上url后面作为传参,例如locationhref = "bjspxxx=xxx"。

你要获取这个值 要看你做的是什么类型的项目

如果是纯 html 那么可能就没办法实现了

如果是web项目 那么可以 通过表单提交 post方法 实现

通过提交表单 在 servlet中 String atr=requestgetParameter("payAmount")

这个str就是获取的值

然后再转发到 子页面中即可

希望能帮到你 谢谢

以上就是关于在iframe中如何调用父窗体的方法全部的内容,包括:在iframe中如何调用父窗体的方法、iframe获取父页面中的一个label值(label值是用户名)、iframe框架里面的子页面的参数在父页面取出来等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9643661.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存