你需要在页面加载完成时(而不是刚加载时)执行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();
子页面访问父页面内容:
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个子元素
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)