获取每个表的总和

时间:2018-10-10 14:10:08

标签: jquery

<table>
 <tr>
  <td>1</td>
 </tr>
 <tr>
  <td>2</td>
 </tr>
</table>

<table>
 <tr>
  <td>3</td>
 </tr>
 <tr>
  <td>4</td>
 </tr>
 <tr>
  <td>5</td>
 </tr>
</table>

我有多个...好吧,为了方便起见,我们只说我有2个表,就像上面的代码一样。我想为每个表添加一个新列,新列将具有各自表的预先添加列的总和。

所以第一个表将打印出3,而第二个表将打印出12。

如何使用jquery?


(为便于理解,这是一张图片)

enter image description here

1 个答案:

答案 0 :(得分:0)

您需要做的是遍历所有表,然后遍历所有表行,并对数据中的每个值求和。您不能将.val()用于td元素,但是可以使用.text()来获取其值。

// Observation, it would be best if you add a class to the tables you are modifying.
function addSum() {
    var tables = $('table');
    $.each(tables, function() {
        var rows = $(this).children('tr');
        var sum = 0;
        $.each(rows, function(){
           sum += parseInt($(this).find('td').text(), 10);
        });
        $(this).append('<tr><td>'+sum+'</td></tr>');
    })
}

下次,请记住添加一些代码,否则我们将为您完成所有代码。