对table表格中特定计算合计

对table表格中某一列求合计

var calcTotal=function(table,column){//合计,表格对象,对哪一列进行合计,第一列从0开始
        var trs=table.getElementsByTagName('tr');
        var start=1,//忽略第一行的表头
            end=trs.length-1;//忽略最后合计的一行
        var total=0;
        for(var i=start;i<end;i++){
            var td=trs[i].getElementsByTagName('td')[column];
            var t=parseFloat(td.innerHTML);
            if(t)total+=t;
        }
        trs[end].getElementsByTagName('td')[column].innerHTML=total;
    };
    calcTotal(document.getElementById('table'),2);

多列求合计的话就遍历执行calcTotal()方法,传入table对象与列下标。

var len = $("#table").find("tr").eq(row).find("td").length;//row指去除头部后要统计的表格内容中任意行
for
(var i=1;i<=len-1;i++){ calcTotal(document.getElementById('table'),i); }

 要注意,如果统计数据所在单元格被合并,需要进行判断,否则会出现列错位统计的现象。

posted @ 2019-03-22 10:36  DongJiaxin  阅读(1164)  评论(0编辑  收藏  举报