Ext.TreeNodeCascade让所有Ext的树支持级联选中
运用了单例模式,使用的话直接让页面文件引用即可。该程序不直接关联任何树的任何事件,可以使用树的checkchange事件对核选的树节点进行进一步操作,譬如修改css样式等;如果通过toggleCheck方法设置结点核选状态将不会进行级联,但会触发树的checkchange事件,压缩包里是一个示例文件
function loadCheckedNodes(nodes){ this.checkAllNodes(false); Ext.each(nodes, function(n){ if (Ext.isString(n)) { n = this.getNodeById(n); } if(n && n.getUI()) { n.getUI().toggleCheck(true); n.cascadeParent(); n.cascadeChildren(); } }, this); } 这个函数的作用是根据树节点数组设置树上对应节点的选中状态,如果级联的话肯定是不对的,因为会级联到本不该被选中的子节点
那直接点击子节点,和使用loadCheckedNodes check子节点,效果不同呀,一个会选中父节点,一个不会。 除非loadCheckedNodes传入的是把子节点 和 父节点都传入了。