`
akunamotata
  • 浏览: 374549 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Ajax中文乱码问题解决方案

    博客分类:
  • js
阅读更多

js:

encodeURIComponent(name);

 

java:
String s = new String(request.getParameter("name").getBytes("ISO8859-1"), "UTF-8");

 

//encodeURIComponent使用了UTF8格式对字符进行编码

 

js:

encodeURIComponent(encodeURIComponent(name));

 

java:

java.net.URLDecoder.decode(....);

 

//两次调用encodeURIComponent方法会将utf-8格式编码变成xx%的格式。

 

 

PS:发现一个bug,在linux下

String s = new String(request.getParameter("name").getBytes("ISO8859-1"), "UTF-8");

解出来的是乱码,以下方法在win和linux中兼容解决此问题:

 

var data = {name:encodeURI($("#myName").val(),"utf-8")},pwd:"password"};   

String name=URLDecoder.decode(request.getParameter("name"),"utf-8"); 
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics