extjs4获取表格元素

用extjs4也有一段时间了,最近一直在用extjs4的可编辑表格,但是用的途中,照着api看,却发现有些函数功能无法使用.用的也有点痛苦.从今天开始,对extjs的公共使用方法总结,方便以后开发使用。今天要介绍的是获取树形表格空间的所有元素.废话不多说了,直接上代码.

//遍历treegrid的数据
 var temptreebodesdata = [];//临时存储数据
 
 /**
  * 获取所有根节点下的节点的数据
  * treegrid : treegrid对象
  * flag : 数据是否包含根节点 true:包含根节点,其他 :不包含
  * showLevel : 导出时是否显示层次,true显示
  * fieldName : 指标名称的字段
  * return: 返回一个数据的对象数组
  */
 function getAllRoot(treegrid, flag, showLevel, fieldName){
	 temptreebodesdata = [];
     var rootNode = treegrid.getRootNode();//获取根节点
     var tmprn = null;
     if (flag) {
    	 tmprn = rootNode.data;
    	 tmprn.children = null;
    	 temptreebodesdata.push(tmprn);
     }
     findchildnode(rootNode, showLevel, 0, fieldName); //开始递归
     return temptreebodesdata;
 }

 //获取所有的子节点  
 function findchildnode(node, showLevel, level, fieldName){
     var childnodes = node.childNodes;
     var blank = "";
     if (showLevel) {
    	 level = level + 1;
         for (var i = 1; i < level; i++) {
        	 blank = blank + "  ";
         }
     }
     Ext.each(childnodes, function (){ //从节点中取出子节点依次遍历
         var nd = this;
         var tmpnd = nd.data;
         tmpnd.children = null;
         if (showLevel) {
        	 var v = blank + tmpnd[fieldName];
        	 tmpnd[fieldName] = v;
         }
         temptreebodesdata.push(tmpnd);
         if(nd.hasChildNodes()){ //判断子节点下是否存在子节点
             findchildnode(nd, showLevel, level, fieldName); //如果存在子节点 递归
         }  
     });
 }
 //--------结束获取树形节点------------



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值