Ajax 读取XML 失败(servlet 发送而来)

诸葛工作室 2008-04-21 05:54:59
function parseMessage(){
var xmlDoc=req.responseXML;
var root=xmlDoc.documentElement;

var info=root.getElementsByTagName("info");

alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;


}
已经可以执行到里面了
在获取info时,语句无法执行,请问为什么?
servlet中发送来的XML,responseText,能够读出.
<?xml version="1.0" encoding="UTF-8"?><message><info>3</info></message>
在线等待,请高手指点
...全文
167 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
诸葛工作室 2008-05-01
  • 打赏
  • 举报
回复
如果用你的方法,那么怎么才可以用AJAX
诸葛工作室 2008-05-01
  • 打赏
  • 举报
回复
xml 没有那些了,我都看了N次了
kokobox 2008-05-01
  • 打赏
  • 举报
回复
lz直接在浏览器打url看看有没有xml显示,看看xml有没有问题

在servlet中是有StringBuffer组装的吗? 还是..
诸葛工作室 2008-04-25
  • 打赏
  • 举报
回复
var info=root.getElementsByTagName("info");
无法获得。你的方法也是不行啊
fengyifei11228 2008-04-25
  • 打赏
  • 举报
回复
alert(info[0].firstChild.data);
--可以alert出来3吧
document.getElementById('check_username').innerHTML=info[0].firstChild.data;
但是你的document.getElementById('check_username').innerHTML指的什么啊
用innerHTML的话,指的是你的check_username的内部HTML是3,当然会错误了
3是一个HTML吗?
如果check_username是input,可以改成document.getElementById('check_username').value = info[0].firstChild.data;
如果要用innerHTML的话需要把info[0].firstChild.data重新构造成一段HTML代码才可以
zyk220 2008-04-25
  • 打赏
  • 举报
回复

function parseMessage(){
var xmlDoc=req.responseXML;
var info=xmlDoc.getElementsByTagName("info");

alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;


}
kokobox 2008-04-25
  • 打赏
  • 举报
回复
lz的<?xml version="1.0" encoding="UTF-8"?> <message> <info>3 </info> </message> 是怎么组装的

在浏览器中直接打开看一下,正确不,怀疑是你的xml中有\n\r之类

解析不了

吐司vivi 2008-04-25
  • 打赏
  • 举报
回复
为什么不在java端解析好了 再接收呢 这不是跟js读xml一样了吗
ahua3515 2008-04-25
  • 打赏
  • 举报
回复
function parseMessage(){
var xmlDoc=req.responseXML;
var root=xmlDoc.documentElement;

var info=root.getElementsByTagName("info");

alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;


}
这里面root返回的应该是个数组吧?应该改成 root[0].get...这个就可以了吧?
dyw31415926 2008-04-25
  • 打赏
  • 举报
回复
打错了,修改后的代码应该是
[code=JavaScript]
function parseMessage(){
var xmlDoc=req.responseXML;
var info=xmlDoc.getElementsByTagName("info");
alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;
}
[/code]
dyw31415926 2008-04-25
  • 打赏
  • 举报
回复
function parseMessage(){
var xmlDoc=req.responseXML;
var root=xmlDoc.documentElement; //这一句是多余的

var info=root.getElementsByTagName("info");

alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;


}
改成

function parseMessage(){
var xmlDoc=req.responseXML;
var xmlDoc=root.getElementsByTagName("info");
alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;


}
nanjg 2008-04-25
  • 打赏
  • 举报
回复
jdom 在类中处理啊 既然是servlet
KK3K2005 2008-04-25
  • 打赏
  • 举报
回复
var xmlDoc=req.responseXML;
好象是不行 只能访问 responseText

你可以把XML转换成字符串 来接受 再解析成dom
Shine_Panda 2008-04-21
  • 打赏
  • 举报
回复
alert(info[0].firstChild.data);
document.getElementById('check_username').innerHTML=info[0].firstChild.data;


改成

alert(info[0].text);
document.getElementById('check_username').innerHTML=info[0].text;

试试。。。。。。。。

81,091

社区成员

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

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