官方文档提供的代码只能获取到根节点的id,没有进行树遍历,无法获取到子树的id.
tree.render({
elem: '#test'
,data: [] //数据源
,id: 'demoId' //定义索引
});
//获得选中的节点
var checkData = tree.getChecked('demoId');
这个获取的是嵌套的,但业务往往是需要一个复选框集合
需要自己写一个方法迭代翻出来
var treecheckdata = tree.getChecked('demoId');
var nodeIds = new Array();
nodeIds = getCheckedId(treecheckdata);
// 测试
var permList = nodeIds;
console.log("permList:"+permList);
// 获取选中节点的id
function getCheckedId(jsonObj) {
var id = "";
$.each(jsonObj, function (index, item) {
if (id != "") {
id = id + "," + item.id;
}
else {
id = item.id;
}
var i = getCheckedId(item.children);
if (i != "") {
id = id + "," + i;
}
});
return id;
}