我正在使用Javascript生成XML。如果XML中没有特殊字符,则可以正常工作。否则,它将生成此消息:“无效的xml”。

我试图替换一些特殊字符,例如:

xmlData=xmlData.replaceAll(">",">");
xmlData=xmlData.replaceAll("&","&");
//but it doesn't work.

例如:
<category label='ARR Builders & Developers'>

谢谢。

最佳答案

考虑generating the XML using DOM methods。例如:

var c = document.createElement("category");
c.setAttribute("label", "ARR Builders & Developers");
var s = new XMLSerializer().serializeToString(c);
s; // => "<category label=\"ARR Builder &amp; Developers\"></category>"

此策略应避免您提到的XML实体转义问题,但可能会有一些跨浏览器的问题。

10-08 14:20