zoukankan      html  css  js  c++  java
  • easyui的treegrid实现树型向上汇总功能

    记录下如何在使用EasyUI的treegrid的情况下实现树型向上汇总功能。

    首先是取出treegrid中的所有顶级节点。

    var treeList = jQuery('#treegrid').treegrid('getChildren');
    var treeListOnlyTopNodes = [];
    for (var i = 0; i < treeList.length; i++) {
        if (!treeList[i].pid) {
        treeListOnlyTopNodes.push(treeList[i]); } } treeSum(treeListOnlyTopNodes);

    然后是定义并实现treeSum函数。

    function treeSum(treeList) {
        // console.log(treeList);
        for (var i = 0; i < treeList.length; i++) {
            sumMoneyToItsParent(treeList[i]);
        }
    }

    最后是定义并实现sumMoneyToItsParent函数。

    function sumMoneyToItsParent(item) {
        let sumMoney = 0;
        if (item.children && item.children.length) {
            for (let childItem of item.children) {
                sumMoneyToItsParent(childItem);
                sumMoney = (Number(sumMoney) + Number(childItem.comeMoney || 0)).toFixed(2);
            }
            item.comeMoney = sumMoney;
            jQuery('#treegrid').treegrid('refresh', item.id);
        }
    }

    特别说明的是,因为EasyUI并没有实现数据驱动模型,因此需要使用treegrid提供的刷新行方法将汇总的数据更新到树表中。

    "敏感的人特别懂事,只需要稍稍给点暗示,就能读懂背后的意思,所以从不让与人为难,只会为难自己。"

  • 相关阅读:
    Profibus 接线
    如何正确使用Profibus插头以及终端电阻
    Java设计模式(3)——抽象工厂模式
    Java设计模式(2)——工厂方法模式
    Java设计模式(1)——简单工厂模式
    Oracle——控制事务
    Jackson-将对象转为Json字符串
    $.ajax
    Ajax——jQuery实现
    Ajax——三种数据传输格式
  • 原文地址:https://www.cnblogs.com/yanggb/p/12462075.html
Copyright © 2011-2022 走看看