1

我正在尝试获取 XML 并将其附加到一个元素,但是无论我如何执行此操作(appendChild,等) insertBeforereplaceChild我都会在包括最新版本在内的所有浏览器中不断收到错误消息。

这是相关的代码...

var s = '<div xmlns="http://www.w3.org/1999/xhtml">'+document.getElementById('xml_textarea').value+'</div>';

var xml = new DOMParser().parseFromString(s,'application/xml');

document.getElementById('example').appendChild(xml);

以下是 DOMParser 正在解释的文本(所以总是错误地解释段落,所以显然每个元素内的空格只是为了绕过网站的解析错误)......

<p>111</p>

<p>222</p>

<p>333</p>

我到底错过了什么阻止对象被添加到页面?

  • 我想继续使用 application/xml 媒体类型/mime,尽管测试 text/xml 没有成功。
  • 没有框架,时期。
4

2 回答 2

1

显然所有者文档不同,所以我必须使用 importNode ...

document.getElementById('example').appendChild(document.importNode(xml.getElementsByTagName('div')[0],true));
于 2012-07-27T12:16:00.073 回答
0

这应该这样做

document.getElementById('example').appendChild(xml.childNodes[0]);
于 2012-07-27T12:19:29.603 回答