gpt4 book ai didi

javascript - 获取 Angular 中列的总和

转载 作者:行者123 更新时间:2023-11-29 18:40:50 24 4
gpt4 key购买 nike

我无法获得计算的总金额。我需要做什么才能获得第 3 列的总数?

<body ng-app="Test">
<section style="margin-top:80px">
<div ng-controller="TestController as test" >
<table class="table">
<tr>
<th>Name</th>
<th>Number</th>
<th>Amount</th>
<th>Reduced Amount</th>
</tr>

<tr ng-repeat="x in test.approve">
<td> {{ x.name }} </td>
<td> <input class="qty form-control" type="number" ng-model="x.number" ng-change="sumByColumn3()" min="0" restrict-to="[0-9]"/> </td>
<td> <span ng-model="x.amount" ng-change="sumByColumn()">{{ x.number*x.amount }}</span> </td>
<td> <input class="qty form-control" type="number" ng-model="x.reducedAmount" ng-change="sumByColumn2()" min="0" restrict-to="[0-9]"/> </td>
</tr>
<tr>
<td style="color:red;">Totals go here</td>
<td>{{ test.approve | sumByColumn3: 'number' }}</td>
<td>{{ test.approve | sumByColumn: 'amount' }}</td>
<td>{{ test.approve | sumByColumn2: 'reducedAmount' }}</td>
</tr>
</table>

</div>
</section>


</body>

这是完整的代码.. https://codepen.io/tampham/pen/RzqLQV

最佳答案

在 html 的第 3 列中:

<td> <span ng-model="x.amount" ng-change="sumByColumn()">{{ x.number*x.amount }}</span> </td>

乘法:

x.number * x.amount

但在这里你错过了:

.filter('sumByColumn', function () {
return function (collection, column) {
var total = 0;

collection.forEach(function (item) {
total += parseInt(item[column]);
});

return total;
};
})

我想如果你加上那个乘法你会得到正确的总数:

parseInt(item[column]*item.number);

关于javascript - 获取 Angular 中列的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57102622/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com