访问对象标记的外部HTML页面内容

时间:2012-05-19 12:19:22

标签: javascript html dom

我已经搜索了这个问题的答案,但无法找到方法。

我想访问我在对象标记中包含的div的内容。

我的include.htm文件:

<div id="includedDiv">This is the included page</div>

我尝试过:

<html>
<head>
<title>Get element from object included page</title>
</head>
<body>
<p>Test: This is the main page</p>
<object id="obj" data="include.htm"></object>
<script>
//alert(document.getElementById("includedDiv").firstChild.nodeValue);
//alert((document.getElementById("obj")).document.getElementById("includedDiv").firstChild.nodeValue);
alert(document.getElementById("obj")["includedDiv"]);
</script>
</body>
</html>

警报都没有打印出消息“这是包含的页面”,有没有办法从DOM获取此内容?

编辑: 窗口[0] .document.getElementById( “includedDiv”)firstChild.nodeValue。是通过DOM访问的好答案,对象标签只是创建另一个窗口:) http://www.w3schools.com/jsref/prop_win_length.asp

3 个答案:

答案 0 :(得分:0)

document.getElementById('id').innerHTMLdocument.getElementById('id').outerHTML无论您要找哪个......

请参阅how to append to a object with innerHTML

答案 1 :(得分:0)

知道了!只需使用

window.parent.mainPageMethod(document.getElementById("includedDiv").firstChild.nodeValue);

在包含的页面中,您可以从主页面获取Javascript函数中的div内容!

感谢您试图帮助Jay,我应该承认,当您谈到window.name属性时,它让我朝着正确的方向前进:)

答案 2 :(得分:0)

更好的答案:你可以通过DOM访问对象标签内容,它只是另一个窗口!

window[0].document.getElementById("includedDiv").firstChild.nodeValue;

就是这样:D http://www.w3schools.com/jsref/prop_win_length.asp