我想在Javascript中序列化DOM并希望获得格式良好的XML文档,但meta
标记未关闭:
<html>
<head>
<meta name="keywords" content="test">
</head>
<body>
<p>test
<pre id='x'/>
</body>
<script>
document.getElementById('x').appendChild(
document.createTextNode(new XMLSerializer().serializeToString(document))
);
</script>
</html>
输出包含无效的XML,其中meta
未关闭。但是p
已关闭:
<html>
<head>
<meta name="keywords" content="test">
</head>
<body>
<p>test</p>
</body>
</html>
Chrome 30.0和Phantomjs 1.9.2中的行为相同。
即使我的HTML输入被破坏,我也期待XMLSerializer
格式良好的XML输出。为什么不发生这种情况以及解决方法是什么?我需要将DOM转换为XML作为文本。
答案 0 :(得分:0)
看起来无法使用原生XMLSerializer
。到目前为止我找到了这些库: