jquery中的每个函数都不循环

时间:2015-08-29 10:06:18

标签: javascript jquery django

我使用django有一个包含以下值的表。

<tr>
    <td>Chips</td>
    <td>2</td>
    <td>20.00</td>
    <td id='totalperitem'>40.00</td>
</tr>

<tr>
    <td>pizza</td>
    <td>2</td>
    <td>100.00</td>
    <td id='totalperitem'>200.00</td>
</tr>

<tr>
    <td>Peanut Butter</td>
    <td>2</td>
    <td>50.00</td>
    <td id='totalperitem'>100.00</td>
</tr>

我试图使用jquery&#39;每个&#39;来获取totalperitem列的总和。功能。但是,我只获得第一项的价值。

jquery语法:

$('#totalperitem').each(function () {
    running_total += parseInt($(this).text());
    console.log('sum : ' + running_total);
});

这是我在控制台中输出的输出

sum : 40

我做错了什么?

谢谢, KJ

2 个答案:

答案 0 :(得分:2)

一页中不允许使用具有相同ID的多个元素。

使用class代替id

<td class='totalperitem'>200.00</td>

并使用.totalperitem作为选择器。

var running_total = 0;
$('.totalperitem').each(function(){
    running_total += parseInt($(this).text());
    console.log('sum : ' + running_total);
});

答案 1 :(得分:0)

使用class代替id并执行,

var sum = $('.totalperitem').get().reduce(function(a,b){
  return a + parseFloat(b.innerHTML);
},0);