首页 > 代码库 > extjs tree check 级联选择
extjs tree check 级联选择
extjs4 tree check 级联选择
实现效果:
关键代码:
function changeAllNode(node, isCheck) { allChild(node, isCheck); allParent(node, isCheck); function allChild(nodec, isCheckc) { var chileNodes = nodec.childNodes; Ext.Array.each(chileNodes, function (nd) { if (nd.hasChildNodes()) { nd.set(‘checked‘, isCheck); allChild(nd, isCheckc); } else { nd.set(‘checked‘, isCheck); } }); } function allParent(nodep, isCheckp) { if (!isCheckp) { nodep.set(‘checked‘, isCheck); if (brothNodesIsTrue(nodep)) { } else { if (nodep.getDepth() > 1) { allParent(nodep.parentNode, isCheckp); } } } else { if (nodep.getDepth() > 1) { nodep.set(‘checked‘, isCheck); allParent(nodep.parentNode, isCheckp); } else { nodep.set(‘checked‘, isCheck); } } } function brothNodesIsTrue(node) { var flag = false; var brothNodes = node.parentNode.childNodes; Ext.Array.each(brothNodes, function (bn) { if (bn.get(‘checked‘)) { flag = true; return false; } }); return flag; } }
监听选择事件:
tree.on(‘checkchange‘, function (node, checked) { changeAllNode(node, checked) });
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。