初蒙数据表。计算金额并在页脚中显示

Posted

技术标签:

【中文标题】初蒙数据表。计算金额并在页脚中显示【英文标题】:Primeng datatable. Calculate amount and dispaly it in footer 【发布时间】:2017-07-01 09:14:02 【问题描述】:

我在一个项目中使用primeng 数据表。 我试图在行分组数据表的页脚中获取总和。在数据编辑和输入新数据期间必须进行求和。

以下函数计算总和:

sumNum1: number;
calculateGroupTotal1(sectionId: number) 
    this.sumNum1 = this.model.Register10Data.map(c => c.SectionId === 1 ? c.Num1 : 0)
        .reduce((sum, current) => +sum + current);

    console.log(this.sumNum1);

    return this.sumNum1;

SectionId 是分组数据的值。

在页脚中我调用了这个函数。我从这里的第一个例子中做到了 - http://www.primefaces.org/primeng/#/datatable/rowgroup

<template pTemplate="rowgroupfooter" let-rowData>
<td style="text-align:left">Sum</td>
<td style="text-align:center">X</td>
<td style="text-align:center">X</td>
<td>calculateGroupTotal1(rowData['SectionId'])</td>
<td></td>
<td></td>
<td></td>
</template>

为什么在汇总字段中我得到字符串的串联而不得到金额? 也许有人做过这样的事情?这个任务很琐碎,但我不知道如何使用这个控件。

【问题讨论】:

【参考方案1】:

我猜问题是您使用的值是字符串。您需要将值转换为数字才能执行计算。

您可以使用let numericalSum = Number(sum);let numericalSum = +sum;,如this answer 中所述。

【讨论】:

查看变化。控制台还返回串联而不是求和。 我认为你需要它是(+sum) + (+current) 太棒了!如果你能接受这个答案,那就太好了。问候

以上是关于初蒙数据表。计算金额并在页脚中显示的主要内容,如果未能解决你的问题,请参考以下文章

Bootgrid sum列并在页脚中显示结果

在页脚中使用过滤器进行列搜索 - 页脚过滤器未显示 - Laravel Datatables Yajrabox

webform c#中的datagridview在页脚中显示查询

Laravel 4:如何在页脚中显示查询结果

如何对数据表中特定数据列的值求和

Datagrid:计算页脚中列的平均值或总和