jstree刷新数据

转载的,原址:http://max.cszi.com/archives/1296

网上资源太少,好不容易在stackoverflow上搜到一个可以用的,本来想自己手写一份的,但是正好网上找到了一篇不错的,所以,嘿嘿嘿。。。

话不多说,直接看代码:

$().ready(function(){
vartree=$('#tree');
tree.jstree({'core':{data:null}});
 
$("#xreload").on("click",null,function(e){
//e.preventDefault();
varurl=$(this).attr("data-url");//+ "?" + Math.random();
ajax.get(url,null,"json",function(json){
tree.jstree(true).settings.core.data=json;
tree.jstree(true).refresh();
//console.debug("reloaded.");
});
});
});

关键点:tree.jstree(true).settings.core.data = json;

tree.jstree(true).refresh();


-------------------我是分界线---------------------------

然而,追求完美的我并不愿意在这里止步,我们需要更好的营养。。。

比如我后台返回的json是个map类型的,就是那种{result:ok, deptTree:[{...}, {...}]}这种形式的数据该怎么和jstree结合呢?

在论坛(jstree的讨论地址:https://groups.google.com/forum/#!forum/jstree)上看到的是使用dataFilter,另外多说一句,貌似jstree的作者回复率也比较高。

上代码吧:

$("#deptTree").jstree({
				core:{
					multiple:false, //设置为单选
					data:{
						url:"getDeptsJuiceDeptAction",
						dataFilter:function(data){
							var json = JSON.parse(data)
							return JSON.stringify(json.deptTree);
						}
					},
					strings: {
		            	'Loading ...' : '正在加载...'
		        	}
				}
			});
			

关键点:

其中deptTree是上述{result:ok, deptTree:[{...}, {...}]}这种格式的deptTree。

dataFilter:function(data){
							var json = JSON.parse(data)
							return JSON.stringify(json.deptTree);
						}

现在来看比较地完美,先到这里。

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值