`

ZTree async中文乱码,ZTree reAsyncChildNodes中文乱码,zTree中文乱码

阅读更多

ZTree async中文乱码,ZTree reAsyncChildNodes中文乱码,zTree中文乱码

 

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

©Copyright 蕃薯耀 2017年7月27日

http://fanshuyao.iteye.com/

 

一、问题描述

使用zTree的异步刷新父级菜单时,服务器返回中文乱码,但项目中使用了SpringMvc,已经对中文乱码处理,为什么还会出现呢?

 

此处为的异步请求的配置:

async: {
    enable: true,
    url: basePath + '/sysMenu/listSysMenu',
    autoParam: ["id=parentId"]
}

 

 

SpringMvc中文字符处理:

<mvc:annotation-driven>
    <mvc:message-converters>
    <bean class="org.springframework.http.converter.StringHttpMessageConverter">
        <property name="supportedMediaTypes">
             <list>
                    <value>application/json;charset=UTF-8</value>
		    <value>text/html;charset=UTF-8</value>
	     </list>
        </property>
   </bean>
  </mvc:message-converters>
</mvc:annotation-driven>

 

 

返回的结果有中文乱码:

[
    {
        "menuId": "880095098165986816",
        "menuName": "????",
        "parentId": "880095098165986815",
        "menuUrl": "http://localhost:8080/imovie-manage/sysMenu/listSysMenuUI",
        "menuIcon": "",
        "menuSort": 1,
        "isEnable": 1,
        "parentMenuName": "??",
        "id": "880095098165986816",
        "name": "????",
        "pId": "880095098165986815"
    },
    {
        "menuId": "880095098165986817",
        "menuName": "???????",
        "parentId": "880095098165986815",
        "menuUrl": "http://localhost:8080/imovie-manage/sysMenu/treeSysMenuUI",
        "menuIcon": "",
        "menuSort": 1,
        "isEnable": 1,
        "parentMenuName": "??",
        "id": "880095098165986817",
        "name": "???????",
        "pId": "880095098165986815"
    }
]

 

二、解决方案

经过排查,发现是SpringMvc中文字符处理的supportedMediaTypes少了一种类型。

从浏览器发送的请求来看:



 

异步刷新使用的是post请求,但从服务器返回的时候,Content-Type为:text/plain;charset=ISO-8859-1

charset是ISO-8859-1,而不是UTF-8,而SpringMvc处理的中文乱码没有包含这种类型,所以导致中文乱码。

 

所以最后的解决方法是在SpringMvc中文处理加上text/plain这个类型,如下:

<value>text/plain;charset=UTF-8</value>

 具体如下:

<property name="supportedMediaTypes">
    <list>
        <value>application/json;charset=UTF-8</value>
	<value>text/html;charset=UTF-8</value>
	<value>text/plain;charset=UTF-8</value>
    </list>
</property>

 

然后问题就这样解决了。^_^

 

 

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

©Copyright 蕃薯耀 2017年7月27日

http://fanshuyao.iteye.com/

  • 大小: 20.4 KB
1
0
分享到:
评论
1 楼 蕃薯耀 2017-07-27  
ZTree async中文乱码,ZTree reAsyncChildNodes中文乱码,zTree中文乱码

>>>>>>>>>
蕃薯耀

相关推荐

    zTree帮助文档_ztree_

    - `reAsyncChildNodes()`:重新异步加载子节点数据。 - `refresh()`:刷新整个树结构。 - `getTreeObj()`:获取zTree的实例对象。 **zTree配置选项** zTree的配置项非常丰富,包括但不限于: - `data`:用于...

    zTree 中文API

    在zTree的中文API文档中,我们可以找到关于这个插件的所有关键信息,包括配置参数、方法、事件以及数据模型等。这份API文档通常以.chm(Compiled Help Manual)格式提供,这是一种微软开发的帮助文件格式,便于用户...

    zTree树的demo和API

    zTree是一款广泛应用于Web开发中的JavaScript插件,主要用于构建可交互的树形结构展示,如组织结构、文件目录等。其强大的功能、易用性和高度的定制性使其在IT行业中备受青睐。本压缩包“zTree_v3”包含了zTree的...

    ztree资源,及使用说明

    async: { enable: true, url: "getData.json", type: "post" }, data: { simpleData: { enable: true } }, callback: { onClick: function(event, treeId, treeNode) { console.log("节点被点击:", ...

    zTree-zTree_v3-各种tree的使用大全(带搜索)

    - 对于大数据量的树,zTree_v3支持异步加载,通过`async`配置项设置,当节点展开时动态请求子节点数据。 - 节点的动态更新则可以通过`updateNode()`或`removeNode()`方法实现,修改或删除指定节点。 6. **自定义...

    ztree使用说明ztree.zip

    **zTree 使用说明** zTree 是一款非常流行的 jQuery 插件,主要用于构建可交互的树形数据结构。它在Web应用中广泛应用于目录展示、权限管理、文件系统等场景,以其丰富的功能、良好的性能和易用性受到开发者的喜爱...

    zTree实现多选下拉框

    6. **性能优化**:当数据量较大时,考虑使用异步加载(`async`配置)以提高页面加载速度,只在需要时加载子节点。此外,合理设置`keep.parent`和`check.chkboxType`属性可以避免不必要的全选/全不选问题。 7. **...

    ztree v2.6 CHM+PDF 中文API

    《zTree v2.6 API 中文文档详解》 zTree是一款广泛应用于Web开发中的JavaScript树形插件,尤其在数据展示、文件管理等领域有着显著的应用。本文将围绕zTree v2.6的API,结合CHM和PDF两种格式的中文文档,详细解读其...

    ztree使用完整示例

    - `treeObj.reAsyncChildNodes()`: 异步刷新子节点。 - `treeObj.updateNode()`: 更新节点数据。 ### 四、完整示例 以下是一个包含数据加载、节点操作、事件监听的完整 ZTree 示例: ```html &lt;!DOCTYPE html&gt; ...

    zTree-zTree_v3.5.17

    zTree是一款广泛应用于Web开发中的JavaScript树形菜单插件,其最新版本为zTree_v3.5.17。这个插件以其强大的功能、灵活的配置选项和良好的用户体验深受开发者喜爱。在本压缩包中,你将获得zTree的核心源码,以便于你...

    java实现ztree异步加载

    ZTree是一款基于JavaScript的树形插件,广泛应用于网站的目录结构展示、权限管理等场景。ZTree的一个显著特性是支持异步加载,这意味着它可以在用户需要时按需加载子节点,减少了初次加载时的数据量,提高了页面响应...

    zTreeAPI_v2.5

    - **async** - `asyncUrl`:异步加载数据的URL。 - `asyncParam`:发送请求时携带的参数。 - `asyncParamOther`:额外的异步参数。 - `isSimpleData`:是否使用简单数据模式。 - `rootPID`:根节点的父ID。 - ...

    zTree v3.5.37 API 文档

    2. **reAsyncChildNodes**: 异步重新加载指定节点的子节点,适用于动态更新数据。 3. **refresh**: 刷新整个树或者指定节点,更新显示状态。 4. **selectNode**: 选中指定节点,同时可以设置是否触发选择事件。 5...

    jquery ztree 异步动态加载

    **jQuery ZTree 异步动态加载详解** 在Web开发中,数据展示往往涉及到大量信息的处理,特别是树形结构的数据。jQuery ZTree是一款强大的JavaScript组件,用于构建具有丰富交互效果的树状菜单或树形控件。在面对大...

    zTree异步加载简单示例VS2008项目完整源码

    异步加载(Async Loading)是zTree的核心特性之一,它能够显著提高用户体验,特别是在处理大量数据时。当用户展开节点时,zTree仅会请求并加载当前需要的数据,而不是一次性加载所有数据,这大大减少了页面加载时间...

    ztree实现左右两棵树的节点移动

    - 在处理大量节点时,为了提高性能,避免一次性加载所有数据,可以采用异步加载(async)方式,只加载可视区域内的节点,当需要时再动态加载其他节点。 6. **异常处理**: - 在进行节点移动操作时,应考虑可能...

    ztree 插件

    zTree提供了丰富的API接口,如`treeObj.reAsyncChildNodes`用于异步加载子节点,`treeObj.selectNode`用于选中节点等。例如,以下代码展示了如何初始化一个简单的zTree: ```html $(function() { var setting = {...

    zTree 3.5.14 API文档

    zTree支持异步加载数据,通过`async`配置项设定,可以设置加载的URL和请求参数,以及加载成功和失败的回调函数。 6. **视图操作** - `refresh()`: 刷新树视图,通常在数据更新后调用。 - `reAsyncChildNodes()`:...

    Ztree的官方demo

    zTree的配置参数多样,包括但不限于`setting`、`data`、`async`等,如`view`用于设置视图样式,`data`用于定义数据模型,`check`用于复选框功能,`callback`用于定义事件回调函数等。 7. **zTree的拓展与优化** ...

    树形结构显示插件zTree_v3-3.5.28

    zTree_v3-3.5.28版本提供了中文说明文档,帮助开发者快速理解和掌握插件使用。文档详细介绍了每个配置项、API及事件的用法,是学习和使用zTree的重要参考资料。 综上所述,zTree_v3-3.5.28插件是一个强大的树形结构...

Global site tag (gtag.js) - Google Analytics