responseXML获取不到数据了

hr_answer 2010-08-13 05:48:11
前面在几位大大的帮助下responsetext获取的数据了,多谢~!再学着使用responseXML传递较多参数就又蔫了。气死我了
前台JS代码片段
function processrequest(){
if(xmlHttp.readyState==4){ //判断对象状态
if(xmlHttp.status==200){ //信息已成功返回,开始处理信息
var xmlDoc=xmlHttp.responseXML.documentElement;
document.getElementById("syr").value=
xmlDoc.getElementsByTagName("syr")[0].childNodes[0].nodeValue;
else{
alert("您所请求的页面不正常!");
}
}

后台代码片段
response.setContentType("xml");
response.getWriter().write("<?xml version='1.0' encoding='UTF-8'?>");
response.getWriter().write("<vehicle>");
response.getWriter().write("<hphm>" +lRs.getString("hphm")+"</hphm>");
response.getWriter().write("<syr>" +lRs.getString("syr")+"</syr>");
response.getWriter().write("</vehicle>");

我模仿网上例子写的JAVA,例子是ASP的。JS基本上算是抄过来的,就是不成功。昏了
...全文
117 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainsilence 2010-08-13
  • 打赏
  • 举报
回复
我强烈建议你,不要用xml返回。每个浏览器上对于xmlDoc的支持不一样。还是用json吧
hr_answer 2010-08-13
  • 打赏
  • 举报
回复
刚才回帖时候,没注意刷新帖子,没看到rainsilence的回复,不好意思啊。
谢谢大家的帮助,又学到了。 书上和网上的例子很多细节都不完善,学习很吃力。
都靠大家分享经验了。结贴~~
rainsilence 2010-08-13
  • 打赏
  • 举报
回复
我3楼已经写了,所以让他仔细看嘛
loveunittesting 2010-08-13
  • 打赏
  • 举报
回复
很明显就是contexttype不对,应该是:
response.setContentType("text/xml;charset=UTF-8");
rainsilence 2010-08-13
  • 打赏
  • 举报
回复
另外documentElement可以不要
rainsilence 2010-08-13
  • 打赏
  • 举报
回复
#3,#4的回答仔细看
hr_answer 2010-08-13
  • 打赏
  • 举报
回复
难道又要学着去用JSON?
hr_answer 2010-08-13
  • 打赏
  • 举报
回复
var xmlDoc=xmlHttp.responseXML.documentElement;
alert("xmlDoc:" + xmlDoc);
document.getElementById("syr").value=
xmlDoc.getElementsByTagName("syr")[0].childNodes[0].nodeValue;


取出来的老是NULL 晕啊
hr_answer 2010-08-13
  • 打赏
  • 举报
回复
response.setContentType('text/xml');我也用了啊

response.setContentType("text/xml");
response.getWriter().write("<?xml version='1.0' encoding='UTF-8'?>");
response.getWriter().write("<vehicle>");
response.getWriter().write("<hphm>" +lRs.getString("hphm")+"</hphm>");
response.getWriter().write("<syr>" +lRs.getString("syr")+"</syr>");
response.getWriter().write("<clpp>" +lRs.getString("clpp")+ "</clpp>");
response.getWriter().write("<clxh>" +lRs.getString("clxh")+ "</clxh>");
response.getWriter().write("<cllx>" +lRs.getString("cllx")+ "</cllx>");
response.getWriter().write("</vehicle>");
response.getWriter().flush();
rainsilence 2010-08-13
  • 打赏
  • 举报
回复
response.getWriter().write("<?xml version='1.0' encoding='UTF-8'?>");
可能是不要的。你试试
rainsilence 2010-08-13
  • 打赏
  • 举报
回复
response.setContentType("xml");改成
response.setContentType("text/xml;charset=UTF-8");
response.setHeader("Cache-Control", "no-cache");
hr_answer 2010-08-13
  • 打赏
  • 举报
回复
晕 查出来responseXML返回NULL 昏啊
gukuitian 2010-08-13
  • 打赏
  • 举报
回复
response.getWriter().flush();

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧