这里有张桌子
SUM | <input type="text"> | <input type="text"> |
| <input type="text"> | <input type="text"> |
| <input type="text"> | <input type="text"> |
SUM | <input type="text"> | <input type="text"> |
| <input type="text"> | <input type="text"> |
FOO | <input type="text"> | <input type="text"> |
BAR | <input type="text"> | <input type="text"> |
当输入值更改时,我想获取“总和行”下方的列总和。
如果还有FOO BAR以外的其他列,则不应将其相加。
这是什么方法?虚构的想法:每列都有参考值,该值将被求和。
提琴快速入门:
http://jsfiddle.net/igos/vNxzu/
编辑
它应该总计到下一个总和行。
row 0 col 0 = row 1 col 0 + row 2 col 0
row 0 col 1 = row 1 col 1 + row 2 col 1
row 3 col 0 = row 4 col 0
row 3 col 1 = row 4 col 1
它应该是动态的,因此当有更多行时,它将自动添加更多行。
最佳答案
尝试
$('tr.sumToUp input').change(function(){
var $this = $(this), $row = $this.closest('tr'), $sum = $row.prevAll('.sumToMe').first(), $rows = $sum.nextUntil('.sumToMe', '.sumToUp'), index = $this.closest('td').index();
var sum = 0;
$rows.each(function(){
var val = $(this).find('td').eq(index).find('input').val();
sum += (+val);
})
$sum.find('td').eq(index).find('input').val(sum);
});
演示:Fiddle
关于javascript - 如何使用jQuery汇总表中的选定行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16541695/