首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

采取ajax与服务器通信,但是返回中文,显示乱码, 求解决

2013-07-08 
采用ajax与服务器通信,但是返回中文,显示乱码, 求解决本帖最后由 scookiem 于 2013-06-25 23:25:19 编辑这

采用ajax与服务器通信,但是返回中文,显示乱码, 求解决
本帖最后由 scookiem 于 2013-06-25 23:25:19 编辑 这个是ajax的代码(部分)

$.ajax({
    url: "getfriendinfo",
    type: "post",
    data: {fid:fid},
contentType: "application/x-www-form-urlencoded;charset=utf-8",
    success: function(data){
         $(data).find("friend").each(function(){
         var nickname=$(this).find("nickname").text(); //nickname
 var sex=$(this).find("sex").text();//sex
 var age=$(this).find("age").text();//age
 if(sex="man")
 sex="男";
 else
 sex="女";
 $("#nickname"+fid).text("昵称:"+nickname);
 $("#age"+fid).text("年龄:"+age);
 $("#sex"+fid).text("性别:"+sex);
 });

这个是服务器java代码(部分)

resp.setContentType("text/xml;charset=UTF-8'");
buf.append("<?xml version='1.0' encoding='UTF-8'?>");
if (rs != null && rs.next()) {
buf.append("<friend>");
buf.append("<nickname>"+rs.getString("nickname")+"</nickname>");
buf.append("<age>"+rs.getString("age")+"</age>");
buf.append("<sex>"+rs.getString("sex")+"</sex>");
buf.append("</friend>");
}
pw.write(buf.toString());
pw.flush();

求速解决啊大神,卡在这好久了
[解决办法]
没有完整的环境  我只能猜猜可能出现的情况
1.你的数据 是导入/复制进去的    这就是数据库的编码格式错误
2.你的编辑器 看看它的格式 是不是UTF8
3.抓包看看你ajax回调的数据是不是乱码   
[解决办法]
编码统一起来,jsp文件的存储编码也要为utf-8
[解决办法]
resp.Charset = "UTF-8",仅供参考。

热点排行