【发布时间】:2012-08-31 14:22:15
【问题描述】:
我一周以来一直在处理这个问题
我想做一些非常简单的事情:
提取 iframe 中包含的 XML 内容并在父文档中使用它(在我的例子中,将 XML 发送到 ActiveX 以进行签名)
这是一个可以找到迷你的网址 project zip
我的目标浏览器是IE9/10。
父文档:
<!-- Main hero unit for a primary marketing message or call to action -->
<div class="hero-unit">
<h1>Parapheur 5.0</h1>
<div class="alert-block">Please use buttons for actions</div>
<div class="btn-group">
<a class="btn btn-success btn-mini" onclick="javascript:expandViewport('viewport1');">Expand viewport »</a>
<a class="btn btn-info btn-mini" onclick="javascript:collapseViewport('viewport1');">Collapse viewport »</a>
<a class="btn btn-primary btn-mini" onclick="javascript:extractXml('#viewport1');">Extract XML »</a>
</div>
<div class="alert-block"></div>
<iframe id="viewport1" src="xml/data.xml" width="1024px" height=""></iframe>
<div class="alert-block"></div>
</div>
<div id="content" class="alert-info"></div>
application.js:
function extractXml(id,content) {
console.log("Starting extraction of XML from within IFrame : " + id);
/*
var lastIndexOfSlash = document.getElementById(id).src.lastIndexOf("/");
var doc = document.getElementById(id).src.substring(lastIndexOfSlash);
$.get('xml/'+doc,function(xml){
console.log(xml);
});
*/
console.log($(id).contentDocument);}
【问题讨论】:
-
使用 chrome 控制台和 IE9 控制台 (F12) 我正在运行这行代码: document.getElementById("viewport1").contentWindow.document 它返回一个对象(我的 xml)但没有办法访问该 XML
-
以下行返回 xml console.log(document.getElementById("viewport1").contentWindow.document.firstChild.nextSibling.textContent);但在 IE 下运行不同(根据两个控制台与 chrome 相比
标签: javascript xml internet-explorer iframe