如何阻止Firefox XMLSerializer使节点大写

时间:2008-10-01 14:10:32

标签: javascript firefox

我在客户端使用JavaScript创建XML文档,然后将其转换回字符串以发送到服务器。 Mozilla有一个方便的方法来完成这个:XMLSerializer().serializeToString(),我正在使用它。但是,此方法中似乎存在一个错误:它以大写形式返回所有节点名称,并以小写形式返回所有属性名称(无论我用于创建节点的大小写)。

有没有办法绕过这种行为并用我原来的大写字母取回XML字符串?更一般地说,有没有办法在Mozilla中创建XML文档并将其返回到字符串而不会覆盖大写字母?

1 个答案:

答案 0 :(得分:4)

看起来您正在使用HTML文档。尝试操作XML文档。

var oDocument = new DOMParser().parseFromString("<root />", "text/xml"); oDocument.documentElement.appendChild(oDocument.createElementNS("http://myns", "x:test")); alert(new XMLSerializer().serializeToString(oDocument));

var oDocument = document.implementation.createDocument("", "", null); oDocument.appendChild(oDocument.createElementNS("http://myns", "x:test")); alert(new XMLSerializer().serializeToString(oDocument));

此致