该文前提:已经实现从服务器获取json数据初始化jsTree这一步。
js中初始化jstree
$('#contact-org').jstree({
"data" : {
"dataType": 'json',
"url":function(node){
return ctxPath + "/v-contact?queryOrg";
},
"data":function(node){
return {"id" : node.id};
}
}
}
}
返回的json数据,对应用于树节点的数据结构:
{
"attr" : {"id":"标示 "},
"data" :{"title": " 显示的标题 "
,"attr":{"href" :"可以自定义一些值,在UI 解析"
,"class": "jstree-search"//可以预先在后台给节点设置样式
}
,"icon":" 图标的地址 "
},
"state" : "closed" 或"open",
"children":[{子节点1},{子节点2}]
}
实现子节点动态加载的关键所在:
返回的数据中将children设置成布尔型true或者false。
当设置成true时,点击该树节点,jstree就会进行一次请求,请求的url和data配置就是初始化jstree中的那些。
当设置成false时,jstree就将该节点当成叶子节点
这样子就实现了jstree的动态加载子节点的功能。
来源:CSDN
作者:Rivers.U
链接:https://blog.csdn.net/you8626/article/details/46544297