jstree 清除之前的记录

jstree树结构,每次加载完页面之后会把上一次的记录再次加载出来,

这种情况是不允许的,下面解决。看代码。data.instance.clear_state()

$('#jstree').jstree({
    'core' : {
        "multiple" : true,
        "animation" : 0,
        'data' : {
            "url" : "",/*数据源*/
            "dataType" : "json"
        },
        "themes" : {
            "icons" : true/*图标显示开关*/
        }
        ,"dblclick_toggle" : false,
        "worker" : false
        }
    ,"types": {
        "default" : {
            "icon": "fa fa-user"/*默认图标,也可以后台传icon属性放入map中,亲测有效*/
        }
    }
    ,'plugins' : ['types', 'wholerow','checkbox','state']
    ,"checkbox":{
        "tie_selection":true,
        "whole_node":true,
        "keep_selected_style":false,
    }
    }).on('select_node.jstree',function(e,data){
        debugger	/*选中之后触发*/
    }).on(' deselect_node.jstree',function(e,data){
        debugger	/*取消选中触发*/	
    }).on("loaded.jstree", function (event, data) {
    /*这两句化是在loaded所有的树节点后,然后做的选中操作,这点是需要注意的,
    loaded.jstree 这个函数取消选中,然后选中某一个节点*/
        $('#jstree').jstree().open_all();/*打开树,不打开下面的选中语句执行有问题*/
        var TempIds = $("#ids").val();
        var TempIdsArr = TempIds.split(",");
        data.instance.clear_state();/*此句用来清除之前选中的数据不可以去掉*/
        $.each(TempIdsArr,function(index,value){
            var id=value+'_anchor';
            $('#jstree').jstree('select_node',id,true,true);/*选中id对应的节点*/
        });  
    }).on("load_node.jstree",function(event,data){
        debugger		/*加载node时候触发*/    	
    });

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值