jquery getJson 中文字符参数乱码问题

来源:互联网 发布:网络电视看电视节目 编辑:程序博客网 时间:2024/05/20 11:19
发生这个情况,首先查看Web服务器的编码。比如: 使用tomcat,可以查看
conf/server.xml 文件中<Connector/>标签中有没有设置URIEncoding,如果有就是根据这个编码做转换,如果没有这个默认为“ISO-8059”。

如果URIEncoding="GBK",后台代码如下:

Java代码

   1. String test = request.getParameter("test");  // 前端传回来的中文字符  
   2. test  = new String(test .getBytes("gbk"), "utf-8"); // 转成UTF-8格式  

String test = request.getParameter("test");  // 前端传回来的中文字符
test  = new String(test .getBytes("gbk"), "utf-8"); // 转成UTF-8格式


注意: ‘gbk', 'utf-8' 要小写


Java代码

解决方法1:  
   前台修改为  
   var data = {name:encodeURI($("#myName").val(),"utf-8"),pwd:"password"};    
   后台修改为  
   String name=URLDecoder.decode(request.getParameter("name"),"utf-8");   

解决方法2:
   前台修改为
   var data = {name:encodeURI($("#myName").val(),"utf-8"),pwd:"password"};  
   后台修改为
   String name=URLDecoder.decode(request.getParameter("name"),"utf-8");
原创粉丝点击