`
Zhoumx
  • 浏览: 72309 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

扰人的AJAX中文乱码

    博客分类:
  • ajax
阅读更多
ajax中文乱码真是个扰人的问题,前几天在自己机器上测试过N次没出问题,今天放到服务器上就出鬼了,试了好多的办法没解决,上网查了资料,也在javaeye里面狂搜一顿,终于还是搞出来了,不知道是否还会出怪,有点担心防不胜防啊,大致解决办法是:
l.javascript
两次 encodeURI()你需要转码的字段,如: urlName = encodeURI(encodeURI(urlName));
2.server
在服务器端用java.net.URLDecoder.decode(urlName,"UTF-8");解析就好了
这个是目前我一次就测试成功的办法,其他的有许多,但基本是都没成功或者说是当前解决了,结果过段时间或放到服务器上就出怪,还有些没用过,就是统一设置UTF-8的编码方式,我觉得这个是最可行的,也是最好的,但目前项目统一使用GBK编码,没办法不好用的。
目前关于乱码解决方式的说法大概有如下的办法:
1.有高人写了Escape类的unescape()方式解码,在js中escape要转码的字符串
这个我没有测试成功,用了escape结果在request.getParameter("string")是取得为空
2.有关于在server端强制转码的方式urlName = new String(urlName.getBytes("ISO-8859-1"),"GBK");
这个可以说是偶尔成功了,不保险,意义不大
其他还有些,慢慢我都要整理比较 哈哈哈
分享到:
评论
2 楼 whg333 2010-07-07  
谢谢了啊,正被该问题困扰,要两次encodeURI啊...
1 楼 zhaozengfengw 2008-08-27  
牛 HAHA 

相关推荐

Global site tag (gtag.js) - Google Analytics