VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2092|回复: 9

xmlHttp.responseXML.getElementsByTagName取不到值的问题,急

[复制链接]

1

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-2-23 14:00:01 | 显示全部楼层 |阅读模式
如果请求的地址是一个静态的XML文件则可以正常解析,但是当请求地址换成JSP,在JSP中用response.getWriter().write的形式将XML内容写出,则在客户端无法接收到,为什么?XML内容在服务端已经打印出来的:
<?xml version="1.0" encoding="UTF-8"?><root><ShopMember name="zyaa"><value>afaf</value></ShopMember><ShopMember name="zyaaa"><value>zyaa_a</value></ShopMember></root>
回复

使用道具 举报

1

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
 楼主| 发表于 2020-5-6 12:45:01 | 显示全部楼层
查了一下,据说非得用Servlet,JSP貌似不行,俺区试试看,郁闷。
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-7-23 17:15:01 | 显示全部楼层
response设置一下contenttype,设为application/xml应该就没问题
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-7-26 08:15:01 | 显示全部楼层
你的jsp
response.setContentType("text/xml;charset=GBK");
StringBuffer buf = new StringBuffer();
buf.append("<?xml version=\"1.0\" encoding=\"GBK\"?>");
buf.append("<root> ");
while(rs.next())
{
buf.append("<node id='"+rs.getString(1)+"' hasChildren='"+rs.getString(4)+"' pro='"+rs.getString(5)+"'> "+ rs.getString(3)+ " </node>");
}
buf.append(" </root>");
out.print(buf);

回复

使用道具 举报

0

主题

6

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-8-2 17:00:01 | 显示全部楼层
response设置一下contenttype,设为application/xml应该就没问题

这个是主要问题,虽然你看到打印,但是可能只是html格式,而不是xml格式的。alert一下ajax.responseXML和ajax.responseText就知道怎么回事了。
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-2 20:00:01 | 显示全部楼层
responseXML
还是
responseXml
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-2 21:30:01 | 显示全部楼层
搂住说的的我也碰到过。调用jsp页面无法得到xml。所以要考虑直接用类来输出xml。可以用ajax直接访问servlet。如过用的是struts框架则可以直接访问action。用out.print输出一个xml文件到内存。这种代码网上有的是。

回复

使用道具 举报

0

主题

6

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-8-2 21:45:01 | 显示全部楼层
responseXML
还是
responseXml
应该是responseXML,查查就知道了,有段时间没有用,不记得。
这个跟是用jsp还是servlet无关。
回复

使用道具 举报

0

主题

6

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-8-2 22:00:01 | 显示全部楼层
其实有个很简单的测试方法,就用IE直接访问你的jsp页面,看看IE是以xml文档格式(这种情况下xml文档可以收缩)显示还是普通字符串显示这个jsp页面。
如果是以xml文档格式显示那么你的jsp就没有问题。我想你的肯定不是以xml文档格式显示的。
回复

使用道具 举报

1

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
 楼主| 发表于 2020-8-20 20:30:01 | 显示全部楼层
只能用Servlet,不能用jsp,不知为啥。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表