编辑器加载中...当使用jsTree构建了一棵带checkbox的tree后,如何获取被checked的item的相关信息呢?
假设我们在 id=tab_DLpane 的div中创建了一棵树,该树的json数据如下:
{"data":"部门","attr":{"id":"tl2_00001"},"state":"open","children":[{"data":"生产部","attr":{"id":"209","index":"91"}}]}
那么我们可以使用以下方法获取所有被选中的Item的信息:
var nodes=$("#tab_DLpane").jstree("get_checked"); //使用get_checked方法
$.each(nodes, function(i, n) {
alert($("#tab_DLpane").jstree("get_text",$(n))+"/"+$(n).attr("gps")+"/"+$(n).attr("id"));
});
说明:当一个目录下的所有child均被选中时,则get_checked仅可得到parent Item的信息,否则可以一一取得被选中的child Item的信息。
取得结点的名称字符串使用:get_text 方法 取得其他属性使用 .arrr 方法。
为 jsTree 绑定 click 事件,即可在每次鼠标选择后,处理被选中的 Item:
$("#tab_DLpane").bind("click.jstree", function (e, data) {
//对data进行处理,或对整棵树进行遍历
}