/**
* 树级联选择节点
*/
function changeAllNode( node,isCheck){
allChild(node,isCheck);
allParent(node,isCheck);
function allChild (nodec,isCheckc){
var chileNodes = nodec.childNodes;
// alert(chileNodes.length);
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;
}
}
分享到:
相关推荐
将文件拷贝到extjs根目录下。运行即可。实现了选中之类。父类联动选中
NULL 博文链接:https://mawj0326-163-com.iteye.com/blog/1628470
说明:本例主要实现在树节点数据过多的情况下对数据进行异步请求,并且在请求数据返回前台的同时实现级联选择。使用ExtJs版本为4.1.1a,在struts2下测试通过。例子仅供提供思路,简单易懂,不负责代码优化,哈哈!
最近在学习extjs tree,有两个不错的例子,希望对需要的朋友有所帮助!
extjs tree 异步加载树型完整的一个web工程,自已已经试过,可用。
ExtJs Tree
extjs tree 学习资料extjs tree 学习资料extjs tree 学习资料extjs tree 学习资料
ExtJs 2.2.1 tree实例,内附mysql数据文件 1. 数据节点一次性加载 2. 节点分为两个类(项目和设备) 3. 右键菜单 4. 节点增、删、改操作 ....... 后台是java struts1。 本例旨在说明extjs的tree操作,后台操作很简陋...
Extjs的tree Extjs的tree Extjs的tree Extjs的tree Extjs的tree
Extjs Tree + JSON + Struts2 例子
Extjs Tree + JSON + Struts2 示例源代码
区别在于,远程脚本调用方式加载树节点信息使用的是WebInvokeTreeLoader,需要通过fn属性来指定用于加载数据的远程方法,并在...而传统的树节点加载器是Ext.tree.TreeLoader,需要指定一个url来获得json数据。
Ext各种组件的使用实例,Extjs tree+grid+form+panel 使用实例
extjs的tree的使用.doc
在网上下载别人的代码,改进加上CHECKBOX ,但是批量删除做不出来,希望高手完成并分享。
ExtJs4 Checkbox tree
extjs tree + json+struts2示例源代码extjs tree + json+struts2示例源代码
分享一个ExtJs Tree, 完整的带有复选框的树形结构
access 数据库,可增加 删除树节点!!
Extjs Tree + JSON + Struts2 开发war包