今天在项目中使用了checkbox,虽然之前对jstree研究了很多,还在项目中实践过,但是今天是第一次使用checkbox,本文记录一下心得和踩过的坑,希望读者能避免
先进行简单的配置和绑定数据
$("#sidebar").jstree({
"plugins": ["wholerow", "types", "state", "checkbox"],
'checkbox' : {
"tie_selection": false,
"keep_selected_style" : false,//是否默认选中
"three_state": false,//父子级别级联选择
},
'core': {
"themes" : {
"theme" : "default" ,
"dots" : false,
"icons" : false
},
"data": window.documentCategory
},);
接着根据数据库中的字段来判断节点是否选中,这个在后台提供json数据的之前就已经进行赋值了,如下:
$tmp['state'] = $item->is_free ? array("checked"=>true):array("checked"=>false);
也即是变成json里面这样的形式:
“state”:{“checked”:true}
这样jstree就会根据state来判断节点是否选中
Comments