我编写了一个java代码(Spring控制器)代码片段,用于向AJAX发送XML响应。很遗憾,我无法使用xhr.responseXML
将响应作为XML获取,但可以使用xhr.responseText
作为文本。而不是在客户端解析文本会有人建议实际问题是什么?这里我附上控制器和AJAX代码。
Spring controller code:
-------------------------------
String xmlResp = "<cities>";
xmlResp+="<city>";
xmlResp+="<name>" + "Hyderabad" + "</name>";
xmlResp+="<population>" + "3000000" + "</population>";
xmlResp+="</city>";
xmlResp+="<city>";
xmlResp+="<name>" + "Bangalore" + "</name>";
xmlResp+="<population>" + "4500000" + "</population>";
xmlResp+="</city>";
xmlResp+="</cities>";
response.setContentType("text/xml");
response.getWriter().write(xmlResp);
AJAX code:
-----------------------------
reading as XML:
var xml=xhr.responseXML;
alert(xml);
reading as Text
var text=xhr.responseText;
alert(text);
为方便起见,XML结构:
<cities>
<city>
<name>Hyderabad</name>
<population>3000000</population>
</city>
<city>
<name>Bangalore</name>
<population>4500000</population>
</city>
</cities>
答案 0 :(得分:0)
您的XML格式不正确:
String xmlResp = "'<'cities>";
会给:
'<'cities>