EasyUI中的Combotree提供了树形下拉框的组件,常见的需求是循环获取父节点至根节点并输出路径。下面是实现方法的完整攻略:
1. 获取当前节点的父节点
使用EasyUI中Combotree的API方法 getChecked 获取当前所选中节点的所有信息,包括节点的 id、text、state、attributes、target 等属性。其中,parent 属性可以获取当前节点的父级节点。
例如:
var tree = $('#tree').combotree('tree');
var node = tree.tree('getSelected');
var parentNode = node.parent; // 获取当前节点的父级节点对象
2. 遍历父节点并输出路径
使用递归的方式遍历当前节点的父节点,直至根节点,输出路径信息。
例如:
// 获取当前节点及父节点路径信息
function getPath(node) {
var path = [];
while (node != null) {
path.push(node.text);
node = node.parent;
}
return path.reverse().join(' > ');
}
// 遍历所有选中节点及其父节点,输出路径信息
function getPaths() {
var tree = $('#tree').combotree('tree');
var checkedNodes = tree.tree('getChecked');
var paths = '';
for (var i = 0; i < checkedNodes.length; i++) {
var node = checkedNodes[i];
paths += getPath(node) + '\n';
}
console.log(paths);
}
示例1:获取当前节点及父节点路径信息
var tree = $('#tree').combotree('tree');
var node = tree.tree('find', 3);
console.log(getPath(node));
示例2:遍历所有选中节点及其父节点,输出路径信息
getPaths();
以上就是 easyui 中 combotree 循环获取父节点至根节点并输出路径实现方法的完整攻略,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:easyui中combotree循环获取父节点至根节点并输出路径实现方法 - Python技术站