JQuery异步获取返回值中文乱码的解决方法


Posted in Javascript onJanuary 29, 2015

用jqgrid异步获取列表值,遇到个问题,服务器端从数据库取到的数据没有出现中文乱码问题(日志打出来是没有乱码的),但是异步传到客户的时候却出现了乱码。 服务器端已经编码过了(UTF-8编码)。开始一直怀疑是客户端的问题,比如客户端和服务器端编码不一致啊,也怀疑是不是jqGrid工具函数中少配了 contentType: "application/x-www-form-urlencoded; charset=utf-8",   等等问题。

结果都不是,纠结了几个小时,后来经过大牛的提醒发现,原来代码还是出在服务器端,疏忽了。

@RequestMapping(value = "/searchUserList.form")
  @ResponseBody
  public void searchUserList(int page, int rows, HttpServletRequest request, HttpServletResponse response) throws IOException{
    System.out.println("idcard="+idCard+"\n page="+page+"\n rows="+rows);
 
    List<User> list = userService.findByIDCard(idCard);
     
    int totalRecord = list.size();
    int totalPage = totalRecord%rows == 0 ? totalRecord/rows : (totalRecord/rows+1);
     
    int index = (page-1)*rows;
    int pageSize = rows;
     
    String json = "{\"total\": \""+totalPage+"\", \"page\": \""+page+"\", \"records\": \""+totalRecord+"\", \"rows\": ["; 
    for (int i = index; i < pageSize + index && i<totalRecord; i++) { 
      User u = list.get(i);
      json += "{\"id\":\"" + u.getUserId() + "\",\"userName\":\""+u.getUserName()+"\",\"idCard\":\""+
      u.getIdCard() +"\",\"userTel\":\""+u.getUserTel()+"\",\"userSex\":\""+u.getUserSex()+
      "\",\"bankCard\":\""+u.getBankCard()+"\",\"cardStatus\":\""+u.getCardSatus()+"\",\"createTime\":\""+
      u.getCreateTime()+"\"}";
      if (i != pageSize + index - 1 && i != totalRecord - 1) { 
        json += ","; 
      } 
    } 
    json += "]}";
    request.setCharacterEncoding("utf-8"); //这里不设置编码会有乱码
    response.setContentType("text/html;charset=utf-8");
    response.setHeader("Cache-Control", "no-cache"); 
    PrintWriter out = response.getWriter(); //输出中文,这一句一定要放到response.setContentType("text/html;charset=utf-8"), response.setHeader("Cache-Control", "no-cache")后面,否则中文返回到页面是乱码 
    out.print(json.toString());
    out.flush();
    out.close();
  }
Javascript 相关文章推荐
js下拉框二级关联菜单效果代码具体实现
Aug 03 Javascript
web网页按比例显示图片实现原理及js代码
Aug 09 Javascript
解析JavaScript中instanceof对于不同的构造器或许都返回true
Dec 03 Javascript
javascript 模拟坦克大战游戏(html5版)附源码下载
Apr 08 Javascript
jquery如何把数组变为字符串传到服务端并处理
Apr 30 Javascript
jQuery获取节点和子节点文本的方法
Jul 22 Javascript
JS制作手机端自适应缩放显示
Jun 11 Javascript
详解JavaScript ES6中的Generator
Jul 28 Javascript
JS操作XML实例总结(加载与解析XML文件、字符串)
Dec 08 Javascript
jQuery zTree树插件动态加载实例代码
May 11 jQuery
Vue在页面右上角实现可悬浮/隐藏的系统菜单
May 04 Javascript
详解如何理解vue的key属性
Apr 14 Javascript
AngularJS中的模块详解
Jan 29 #Javascript
jquery结合CSS使用validate实现漂亮的验证
Jan 29 #Javascript
5个数组Array方法: indexOf、filter、forEach、map、reduce使用实例
Jan 29 #Javascript
推荐一个自己用的封装好的javascript插件
Jan 29 #Javascript
js实现点击左右按钮轮播图片效果实例
Jan 29 #Javascript
JavaScript中实现继承的三种方式和实例
Jan 29 #Javascript
javascript面向对象程序设计(一)
Jan 29 #Javascript
You might like
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT
2011/04/23 PHP
table标签的结构与合并单元格的实现方法
2013/07/24 PHP
PHP依赖注入(DI)和控制反转(IoC)详解
2017/06/12 PHP
关于Laravel-admin的基础用法总结和自定义model详解
2019/10/08 PHP
IE 条件注释详解总结(附实例代码)
2009/08/29 Javascript
Mootools 1.2教程 Tooltips
2009/09/15 Javascript
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
2010/12/04 Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
2015/07/27 Javascript
JS实现来回出现文字的状态栏特效代码
2015/10/31 Javascript
jQuery插件之jQuery.Form.js用法实例分析(附demo示例源码)
2016/01/04 Javascript
详谈javascript异步编程
2016/02/21 Javascript
Angular2 (RC5) 路由与导航详解
2016/09/21 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
Windows上node.js的多版本管理工具用法实例分析
2019/11/06 Javascript
jquery使用echarts实现有向图可视化功能示例
2019/11/25 jQuery
在django中使用自定义标签实现分页功能
2017/07/04 Python
python学习开发mock接口
2019/04/28 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
2020/05/07 Python
python代数式括号有效性检验示例代码
2020/10/04 Python
解决Pymongo insert时会自动添加_id的问题
2020/12/05 Python
CSS3中Color的一些特性介绍
2012/05/27 HTML / CSS
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
HTML5新增的表单元素和属性实例解析
2014/07/07 HTML / CSS
迪卡侬荷兰官网:Decathlon荷兰
2017/10/29 全球购物
荷兰鞋类购物网站:Donelli
2019/05/24 全球购物
Java面试题:Java类的Main方法如果是Private将会怎么样
2016/08/18 面试题
后勤副校长自我鉴定
2013/10/13 职场文书
大学生预备党员自我评价分享
2013/11/16 职场文书
手机促销活动方案
2014/02/05 职场文书
汇源肾宝广告词
2014/03/20 职场文书
交警失职检讨书
2015/01/26 职场文书
2015年医务人员医德医风自我评价
2015/03/03 职场文书
国家助学金受助感言
2015/08/01 职场文书
创业计划书之餐饮馄饨店
2019/07/18 职场文书