根据课程获得td总计?

时间:2012-08-01 08:54:13

标签: jquery jquery-selectors

我有一个动态生成的表,看起来像这样:

<table id="mytable">
    <thead>
        <tr>
            <td>col1</td>
            <td>col2</td>
            <td>col3</td>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>col1</td>
            <td class="col2">1</td>
            <td class="col3">2</td>
        </tr>
        <tr>
            <td>col1</td>
            <td class="col2">7</td>
            <td class="col3">4</td>
        </tr>
        <tr>
            <td>col1</td>
            <td class="col2">col2</td>
            <td class="col3">col3</td>
        </tr>
    </tbody>
    <tfoot>
        <tr>
            <td>Totals</td>
            <td id="col2total"></td>
            <td id="col3total"></td>
        </tr>
    </tfoot>
</table>

如何获取td中包含col2类的值的总和,并将总数添加到ID为td的{​​{1}}?由于此表是动态生成的,因此我不知道在col2total中生成了多少tr

3 个答案:

答案 0 :(得分:2)

试试这个:

var total = 0;
$(".col2").each(function() {
    total += parseFloat('0' + $(this).text(), 10);
})
$("#col2total").text(total);

答案 1 :(得分:0)

var total = 0;
$("td.col2").each(function() {
    total += parseFloat($(this).text()) || 0;
});

$("#col2total").text(total);

答案 2 :(得分:0)

$(document).ready(function(){ 
    var sum = 0; 
    $('.col2').each(function() { 
        sum += Number($(this).val()); 
    });

    $("#col2total").text(sum); 
});