作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一张这样的 table :
HTML:
<table>
<tr><td>value1</td><td>value2</td><td>value3</td></tr>
....
<tr><td>value1</td><td>value2</td><td>value3</td></tr>
</table>
并希望通过使用 jquery 添加动态行来计算表格底部每一行的总和。
这是用 jQuery 计算之前的示例表。
2 3 4
7 1 2
32 58 4
这是结果:
2 3 4
7 1 2
32 58 4
41 62 10
JQuery:
$("tr").each(function(){
var tdCount= $(this).find("td").length;
for(i=0;i<tdCount;i++)
{
newRow[i]+=parseInt($(this).eq(i).value);
}
});
var row="<tr>";
for (i=0;i<newRow.length;i++)
row+="<td>"+newRow[i]+"</td>";
row+="</tr>";
$("table").append(row);
最佳答案
你可以像下面那样做。
$('table tfoot td').each(function(index) {
var total = 0;
$('tbody tr').each(function() {
total += +$('td', this).eq(index).text(); //+ will convert string to number
});
$(this).text(total);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tbody>
<tr><td>2</td><td>3</td><td>4</td></tr>
<tr><td>7</td><td>1</td><td>2</td></tr>
<tr><td>32</td><td>58</td><td>4</td></tr>
</tbody>
<tfoot>
<tr><td></td><td></td><td></td></tr>
</tfoot>
</table>
更新:动态总行。
var totalRow = '', columnNo = $('table tr:first td').length;
for (var index = 0; index < columnNo; index++) {
var total = 0;
$('table tr').each(function () {
total += +$('td', this).eq(index).text(); //+ will convert string to number
});
totalRow += '<td>' + total + '</td>';
}
$('table').append('<tr>' + totalRow + '</tr>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr><td>2</td><td>3</td><td>4</td></tr>
<tr><td>7</td><td>1</td><td>2</td></tr>
<tr><td>32</td><td>58</td><td>4</td></tr>
</table>
关于jquery - 如何计算所有行表表查找的一列中的值总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37276167/
我是一名优秀的程序员,十分优秀!