`````````ajax问题`````~~~
我想做一个功能是:点击按钮,通过ajax访问数据库,从数据库查询数据
,将数据转化为XML,将数据发回客户端
下面的代码是将数据转化为XML的那段:
StringBuffer xml = new StringBuffer( " <?xml version= "+ "1.0 "+ " encoding= "+ "UTF-8 "+ "?> "+ " <result> ");
for(j=0;j <tableSize;j++)
{
xml.append( " <data> ");
xml.append( " <ip> "+tableIp2[j]+ " </ip> ");
area=tableArea2[j];
area=new String(area.getBytes( "ISO-8859-1 "), "utf-8 ");
xml.append( " <ipArea> "+area+ " </ipArea> ");
xml.append( " <ipNum> "+tableData2[j]+ " </ipNum> ");
xml.append( " </data> ");
}
xml.append( " </result> ");
//通过这个方法发送回去
sendResponse(response, xml.toString());
我这样做在客户端只能用var results = xmlHttp.responseTest得到数据
不能用var results = xmlHttp.responseXML解析得到数据
XML解析部分是没有问题的
我想是我将数据库查询出来转化为XML时候出问题
请问应该怎么改?
谢谢~~~~`
------解决方案--------------------xml拼装完成后,直接通过response发出去啊
response.setContentType( "text/xml;charset=UTF-8 ");
response.getWriter().write(xml.toString());
response.getWriter().flush();
------解决方案--------------------alert一下repsonseXML看看有没有数据,有的话就是你后面的解析代码错了.
------解决方案--------------------发现XML写错了:
StringBuffer xml = new StringBuffer( " <?xml version= "+ "1.0 "+ " encoding= "+ "UTF-8 "+ "?> "+ " <result> ");
StringBuffer xml = new StringBuffer( " <?xml version=\ "1.0\ " encoding=\ "UTF-8\ "?> <result> ");
------解决方案--------------------输出头response.setContentType( "text/xml;charset=UTF-8 ");
如果有问题,就是你的xml文件不对