jquery 在父页面中如何获取子页面中的对象

jquery 在父页面中如何获取子页面中的对象,第1张

两点

1既然你用jQuery了,为什么还要用getElementById()来获取元素?况且,获取iframe中元素也没这么麻烦啊

$("#id_iframe")contents()find("#id_button_test");

这不就好了。。

2你这部分代码是写在ajsp页面中了吧?那我估计之所以不运行,是因为你注册点击事件的时候,bjsp页面还没有加载完。所以尽管你调试的时候能输出,但是代码里是注册不上的。把这段代码写在bjsp的windowonload事件中

①jquery在父页面 获取iframe子页面的元素

代码如下:(objid为子页面的id)

$("#objid",documentframes('iframename')document)

②js 在父页面获取iframe子页面元素代码如下:

windowframes["iframe_ID"]documentgetElementByIdx_x("元素id");

以上两种都能获取到子页面中的元素,再根据元素去获取元素的值就可以了。

你需要在页面加载完成时(而不是刚加载时)执行alert

如果像你这么写

在alert执行的时候

<iframe src="childhtml" id="myframe">

</iframe>

还没有加载

所以找不到这个元素

当然就是null了

下面给你个jquery的例子,以供参考

$(document)ready(function(){

    alert(documentgetElementById("myframe")contentWindowdocumentgetElementById("    pg"));

})

//1、格式:

windowframes["iframe的name值"]documenttitle;

//实例:

windowframes["ifm"]documenttitle;

//2、格式:

var obj=documentgetElementById("iframe的name")contentWindow;

var ifmObj=objdocumenttitle;

//实例:

var obj=documentgetElementById("ifm")contentWindow;

var ifmObj=objdocumenttitle;

//3、格式:

windowparentdocumentgetElementById("父窗口的元素ID")title;

//实例:

windowparentdocumentgetElementById("ifm")title;

//jquery在父窗口中获取iframe中的元素

//1、格式:

$("#iframe的ID")contents()attr("title");//jquery 方法1

//实例:

$("#ifm")contents()attr("title");//jquery 方法1

//2、格式:

$(selector, windowtopdocument);; //jquery 方法2

//实例:

$(document, windowtopdocument)attr("title");//jquery 方法2

//类似的方法

$(selector, windowtopdocument); 

$(selector, windowopenerdocument); 

$(selector, windowtopframes[0]document);

Firefox, Chrome 测试通过,没问题。

如果在IE 中有问题, 可能是因为array元素所指向的对象随着子页面关闭,也已经不存在,所以产生错误。

可以在父页面中复制一下被add的obj, 这里用了JSON来复制obj:

var array = [];

function addLine(obj){

                                

arraypush(JSONparse(JSONstringify(obj)));       

//arraypush(obj);

}

query取得iframe中元素的几种方法

在iframe子页面获取父页面元素

代码如下:

$('#objId', parentdocument);

// 搞定

在父页面 获取iframe子页面的元素

代码如下:

$("#objid",documentframes('iframename')document)

$(documentgetElementById('iframeId')contentWindowdocumentbody)html()

显示iframe中body元素的内容。

$("#testId", documentframes("iframename")document)html();

根据iframename取得其中ID为"testId"元素

$(windowframes["iframeName"]document)find("#testId")html()

用JS或jQuery访问页面内的iframe,兼容IE/FF

注意:框架内的页面是不能跨域的!

假设有两个页面,在相同域下

indexhtml 文件内含有一个iframe:

XML/HTML代码

">

原因是这样的 因为用户每次 *** 作js都需要加上一个物理标签。触发这个物理标签只能是鼠标事件。所以进入函数的时候会拥有这个标签能成功执行 但是当你执行ajax 返回的时候物理标签就已经失效了。

所以说 当你ajax执行完毕 就已经不能再次调用其他js jq插件的函数了。 不知道这样解释你明白不

以上就是关于jquery 在父页面中如何获取子页面中的对象全部的内容,包括:jquery 在父页面中如何获取子页面中的对象、jquery,iframe,如何在父窗口监听,子窗口发生改变时,父窗口获取子窗口的值、父页面怎么样取得子页面内的元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://www.54852.com/web/9730048.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存