我在客户端使用JavaScript创建XML文档,然后将其转换回字符串以发送到服务器。 Mozilla有一个方便的方法来完成这个:XMLSerializer().serializeToString()
,我正在使用它。但是,此方法中似乎存在一个错误:它以大写形式返回所有节点名称,并以小写形式返回所有属性名称(无论我用于创建节点的大小写)。
有没有办法绕过这种行为并用我原来的大写字母取回XML字符串?更一般地说,有没有办法在Mozilla中创建XML文档并将其返回到字符串而不会覆盖大写字母?
答案 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));
此致