Jstree更改内容后仅刷新jstree的dom结构

Jstree 更改内容后该如何刷新jstree的DOM结构?

    • ajax获取数据的,直接
      $("#tree").jstree().refresh();
    • html中嵌入json格式构建的jstree,则可以手动ajax获取后,通过以下代码进行刷新设置
      $("#tree").jstree().settings.core.data = managerTeam1;
      $("#tree").jstree().refresh(true);

以下是完整代码例子:

var managerTeam = [{ "id":"m1", "text": "M1", "children": [ {"parent": "m1", "text": "T1"}, {"parent": "m1", "text": "T2"}, {"parent": "m1", "text": "M2"}, {"parent": "m1", "text": "T3"},  { "id": "m3","parent": "m1", "text": "M3", "children": [ {"parent": "m3", "text": "T6"}, {"parent": "m3", "text": "T7"}], "state":{"opened":true}} ], "state":{"opened":true}}];

var managerTeam1 = [{ "id": "m3", "text": "M3", "children": [ {"parent": "m3", "text": "T6"}, {"parent": "m3", "text": "T7"}], "state":{"opened":true}}]; //可手动发起ajax请求获取

$("#tree")
  .jstree({
    "core" : {
        "data" : managerTeam
    }
});


$('#refresh').click( function() {
		$("#tree").jstree().settings.core.data = managerTeam1;
    $("#tree").jstree().refresh(true);
})

 

抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址