Stackoverflow中有很多解决方案来计算列的总数。那部分我已经解决了。问题是总共13列,只有两列实际上是十进制数。这个表使用ajax / datatables jQuery插件获取数据(我不知道信息是否必要但是以防万一)。
如果查看列,正确的计算应该是3113.27,但是它将数字舍入为3111,所以它没有考虑小数。这是我正在使用的代码。
$("#example tr:last td:not(:first,:last)").text(function(i){
var t = 0;
$(this).parent().prevAll().find("td:nth-child("+(i+2)+")").each(function(){
t += parseInt($(this).text(), 10 || 0);
});
return t;
});
同样,其余的列都很好,因为我只需要计算/求和,但这两个都给我带来了麻烦。谢谢你的帮助。
答案 0 :(得分:4)
parseInt()
返回一个整数(即没有小数)。如果您使用parseFloat()
,它应该可以正常工作。
答案 1 :(得分:1)
试试这个:
$("#example tr:last td:not(:first,:last)").text(function(i) {
var t = 0;
$(this).parent().prevAll().find("td:nth-child("+(i+2)+")").each(function(){
t += parseFloat(this.innerText) || 0;
});
return t.toFixed(2);
});