用ajax处理返回xml数据解析的问题

我通过ajax提交一个请求,返回 xml串,解析的时候如果xml中有特殊字符如 "" > < 等等,会出现错误,这个问题要怎么处理?



我在action中是通过sting类型拼的xml,因此这样特殊字符没有进行转义,请问,ajax对于这类问题是如何处理的?
问题补充:
我是用stringbuffer来拼的xml串,而没有用xml api来构建xml信息。然后直接将stringbuffer转为string返回前台,然后用js解析xml,就出现这个问题了。

最好使用API来组装XML。除非你很清楚怎么转化。 我给你办法就是把这些出现的特殊字符重新转编码。 如果你还是不明白, 我也没有办法。
字符 ", &, < > (char)39(这个查询下ASCII, 我忘记了), 转换成 &quot;, & < > ' 就可以了。 我想, 你应该去学习下XML的相关的知识。 什么都不明白, 也是做不好的。

这个和ajax无关, XML实体转义需要你在输出的时候就做的。 不知道你XML的输出用的什么解析工具, 一般来说, XML API里都代有实体转义工具:

        { "quot", "34" }, // " - double-quote
        { "amp", "38" }, // & - ampersand
        { "lt", "60" }, // < - less-than
        { "gt", "62" }, // > - greater-than
        { "apos", "39" }, // XML apostrophe

你自己写个程序也可以的。 很简单, 就这几个符号。

另外, 如果你使用xml1.0 协议, 那么还有好多特殊符号需要处理。 祝你好运气。 建议你写成xml 1.1协议。