dkketty
2011-07-19 17:28
浏览 262
已采纳

struts2+json 乱码!!!

代码如下
var jsonData = {
"vo.id":$("#voId").val(),
"vo.videoclass":$("#videoclass").val()
};
$.ajax({
type:"post",
url:"${ctx}/videoclassEdit_update.action",
dataType:"json",
data:jsonData,
success:function(data){
$(".msg").html("");
var msgHtml = ""+data+"";
$(".msg").append(msgHtml);
}
});

页面:pageEncoding="GBK" ,contentType="text/html; charset=GBK"

struts.xml中有

web.xml过滤器org.springframework.web.filter.CharacterEncodingFilter
总之,都变成了gbk。

后台:
vo.getVideoclass()严重乱码,
new String(vo.getVideoclass().getBytes("GBk"),"UTF-8");得到的字符串始终是最后一个汉字乱码

ajax的乱码真烦人啊

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • heihei0923 2011-07-19 20:16
    已采纳

    ajax提交都是以utf-8格式编码的,在filter中设置了gbk编码会影响所有POST方式提交的数据;如果是post form提交,那应该不会有问题;但是ajax post是utf-8编码那应该会有问题。
    对于ajax的访问,在action中设置request.setCharacterEncoding("utf-8")。试试。

    打赏 评论
  • iteye_9002 2011-07-20 10:38

    全部UTF-8,会有意想不到的结果 :lol:

    打赏 评论

相关推荐 更多相似问题