【问题标题】:Jquery DataTables not able to display unicode characters.Jquery DataTables 无法显示 unicode 字符。
【发布时间】:2016-04-23 13:06:34
【问题描述】:

我已经创建了数据表,我的输入 JSON 格式如下。

[{"input" : "안녕하세요"}]

由于字符串是韩语,数据表无法加载该数据。 低于错误... 数据表警告..请求未知参数...

已尝试在我的主 html 页面中设置 content="text/html;charset=utf-8"。 没有任何工作... 请让我知道如何解决这个问题。谢谢。

【问题讨论】:

标签: javascript utf-8 datatables


【解决方案1】:

对于java,你可以这样编码:

@ResponseBody
    @RequestMapping(value = "/searchFilter.do")
    public ResponseEntity<String> getContactSearchBean(HttpServletRequest request, HttpServletResponse response,
            String clientName) {
        logger.info("Getting data  according to search filter to refresh table ");
        List<Map<String, Object>> contactDetails = service.getContactDetailSearch(request, clientName);
        JSONArray json = JSONArray.fromObject(contactDetails);
        String jsonString = json.toString();
        HttpHeaders responseHeaders = new HttpHeaders();
        responseHeaders.add("Content-Type", "text/html; charset=utf-8");
        logger.info("returning data for populating datatable");
        return new ResponseEntity<>(jsonString, responseHeaders, HttpStatus.OK);
    }

【讨论】:

  • 对于其他语言,您也应该在 responseHeaders 中设置 charset=utf-8
  • 您能否也为像我这样不知情的人添加一些描述。
  • UTF-8 编码支持中文或特殊字符。
  • 因此,如果您想在数据表中显示中文字符,那么您必须像这样 HttpHeaders responseHeaders = new HttpHeaders(); 以 UTF-8 对数据进行编码。 responseHeaders.add("Content-Type", "text/html; charset=utf-8");此代码将在 java 中将您的响应编码为 UTF-8。如果您使用任何其他语言,那么您也应该使用 utf-8 编码对您的响应进行编码
猜你喜欢
  • 2015-07-04
  • 2011-12-06
  • 1970-01-01
  • 2013-06-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-08
相关资源
最近更新 更多