JSTree通过ajax加载数据时树形结构不显示的解决办法

版本:jstree 3.3.5
页面引入资源:

<link rel="stylesheet" href="/plugins/jstree/themes/default/style.min.css" />
<script src="/plugins/jstree/jstree.min.js"></script>
出现的现象是:静态数据加载能够正常显示,Ajax加载数据时不显示,只能够看到一闪而过的Loading。
代码如下:
$('#unittree').jstree({
    'core' : {
        //写法一(正常显示):'data' : [{"id":"-1","text":"部门结构","children":[{"id":"1","text":"技术部","state":"closed"},{"id":"11","text":"测试部门"},{"id":"22","text":"测试部门"},{"id":"23","text":"测试部门"},{"id":"56","text":"测试部门"}]}]
        //写法二(正常显示):'data': {
             'url': '/sys/unit/treejson.xhtml?root=true&deptid=${deptid}',
             "datatype": "json"
         }
    },
    "plugins": ["themes", "json_data", "ui"]
});
经跟踪,ajax获取到的数据内容与静态数据内容是一模一样的。
解决办法:服务端返回数据时设置content-type为application/x-json,必须设置content-type而且只能设置为这个值,如果不设置或者设置成text/html都不行。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值