我很无奈。我需要使用Javascript或Jquery从iframe获取源代码。
iframe的源文件位于同一个域。这是我的iframe:
<iframe src="/source_file.html" id="iframe_id"></iframe>
我使用以下如此着名的语法来从iframe获取源代码:
document.getElementById("iframe_id").contentWindow.document.body.innerHTML
但是使用这段代码,我只能在BODY元素中获取代码。我想从&lt;!doctype html&gt;获取完整代码到&lt; html&gt; 。
请帮帮我。
答案 0 :(得分:6)
使用documentElement
代替body
和outerHTML
代替innerHTML
。
示例:强>
document.getElementById("iframe_id").contentWindow.document.documentElement.outerHTML
请注意,这将排除doctype和任何不属于HTML节点的子项的注释。如果需要包含此数据,则需要单独的AJAX请求来获取它。 doctype也可以从document.doctype
重建。