父页面怎么样取得子页面内的元素?

父页面怎么样取得子页面内的元素?,第1张

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

如果像你这么写

在alert执行的时候

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

还没有加载

所以找不到这个元素

当然就是null了

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

$(document)ready(function(){
    alert(documentgetElementById("myframe")contentWindowdocumentgetElementById("    pg"));
})

楼主会用jquery吗,可以使用jquery来从父页面获取子页面的iframe中的对象数据,也可以从子页面获取父页面的页面数据,参见如下说明:

父页面访问子页面内容:

var $iframe =  $($('#iframe_editImage')[0]contentWindowdocumentbody);
$iframefind("#uploadImgfile")val();

子页面访问父页面内容:

alert($('body', parentdocument)html());

在js中,我们时常用到用iframe做系统框架,在子页面也,父页面之间的值传递是一个问题,下面是js获取父窗体和子窗体的对象js:
1在iframe子页面中获取父页面的元素:
a>windowparentdocument这个是获取父页面document中的对象;
b>如果要获取父页面js中的方法:windowparentxxxx();xxxx()为方法;
2在父页面中获取iframe子页面中的元素:
a>
var child =
documentgetElementByIdx_x("mainFrame")contentWindow;//mainFrame这个id是父页面iframe的id
childdocument;//获取子页面中的document对象;

//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);

如果你用的iframe的话 比如你的父页面有一个全局js变量 windowHeight 在子页面可以用parentwindowHeight取到 如果你用windowshowModalDialog() d出的页面就不可以了。 这种可以通过 java asp或者你用的其他语言后台传值。

js找一个子元素的父元素:

<!DOCTYPE html><html><head>

<meta charset="utf-8">

</title>    <script type="text/javascript">    function deleteElement(Obj)

{        ObjparentNodeparentNoderemoveChild(ObjparentNode);    }    </script></head>

<body>     <ul class="list2" ><li ><img alt="" src="1jpg" /><div>mingzi1</div>

<a onclick="deleteElement(this)">删除</a></li><li ><img alt="" src="2jpg" />

<div>mingzi2</div><a onclick="deleteElement(this)">删除</a></li><li >

<img alt="" src="3jpg" /><div>mingzi3</div><a onclick="deleteElement(this)">删除</a>

</li></ul></body></html>

删除一个父元素下面的所有子元素:
documentgetElementById("ok")innerHTML = "";
删除其中的一个:
documentgetElementById("ok")remove(documentgetElementById("ok")children(i));
//删除id为"ok"下的第i-1个子元素

在iframe子页面获取父页面元素 代码如下: 代码如下: $('#objld', parentdocument); 在父页面获取iframe子页面的元素 代码如下: 代码如下: $("#objid", documentiframes('iframe')document) 或 代码如下: $(documentgetElementById('ifram


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

原文地址: http://outofmemory.cn/yw/13333736.html

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

发表评论

登录后才能评论

评论列表(0条)

保存