使用javascript在IE9上获取iframe xml内容

时间:2015-11-24 07:34:41

标签: javascript jquery html xml iframe

我很难在IE9上获取iframe的xml内容。在其他浏览器上,它运行良好,但它在IE9上呈现的方式是我的问题。

我的iframe及其在IE9上呈现的内容:

<iframe name="myiframe' id="myiframe">
    <Namespace xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <Nodes>
            <node>
            <node>
        <Links>
    ........

我用来获取内容的代码:

var iframe: HTMLIFrameElement = <HTMLIFrameElement>document.getElementById('myiframe');
var xml = iframe.contentWindow.document.firstChild.textContent;

当我尝试alert xml时,它只显示节点的内容,不包括节点标题,甚至是<>。< / p>

我需要xml字符串值。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

实际上,根据您的标记,这是无效的,您已将节点置于iframe的开启/关闭之间,并且仅在任何浏览器不支持iframe时执行。 An example of iframe @MDN

同时获取iframe的文字内容实际上也取决于Same origin policy

.textContent正在做正确的事情来获取您要定位的元素的文本。如果您想获得所定位元素的html/Node,那么您应该使用outerHTML

var xml = iframe.contentWindow.document.firstChild.outerHTML;