首页 新闻 会员 周边

ajax接受json乱码

0
悬赏园豆:5 [已解决问题] 解决于 2012-11-09 17:06

页面代码:

$.ajax({
url:"update.action",
type:"POST",
dataType:"json",
success: function(data){
alert(data);
}
});

后台代码:

JSONArray ja = JSONArray.fromObject(list);
String data = ja.toString();
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("json");
PrintWriter writer = response.getWriter();
System.out.println(data);
writer.write(data);
writer.flush();

页面上弹出的是:???,???,???,???,???,??   弹出的信息个数正确,为什么弹出???,我用了eval("("+data+")") 连对话框都不弹了

龙尹的主页 龙尹 | 初学一级 | 园豆:132
提问于:2012-11-09 14:45
< >
分享
最佳答案
0

是不是编码的问题,声明一下返回的编码

收获园豆:3
飞来飞去 | 老鸟四级 |园豆:2057 | 2012-11-09 14:53

response.setContentType("json");  这个不是声明了返回的格式为:json吗 

龙尹 | 园豆:132 (初学一级) | 2012-11-09 15:16

@longyin: 需要设置encoding,你那是返回的数据格式,不是编码

飞来飞去 | 园豆:2057 (老鸟四级) | 2012-11-09 16:07

@飞来飞去: 谢谢 果然是编码的问题;

龙尹 | 园豆:132 (初学一级) | 2012-11-09 17:02

@飞来飞去: 谢谢 果然是编码的问题;

龙尹 | 园豆:132 (初学一级) | 2012-11-09 17:02

@飞来飞去: 就是编码的问题谢谢了

龙尹 | 园豆:132 (初学一级) | 2012-11-09 17:03

@飞来飞去: 就是编码的问题谢谢了

龙尹 | 园豆:132 (初学一级) | 2012-11-09 17:03
其他回答(1)
0

你后台大哥断点,看下String data = ja.toString();这步转化对不?

学学学习 | 园豆:427 (菜鸟二级) | 2012-11-09 14:47

我打印了一下: ["瑞","虎","镇","贺","艳勇","心在飞","天罗地网","追风少年","夕颜"]

应该没错啊

支持(0) 反对(0) 龙尹 | 园豆:132 (初学一级) | 2012-11-09 14:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册