Jquery选择器生成总计勾选复选框的位置

时间:2011-04-01 13:41:33

标签: javascript jquery jquery-selectors

我正在尝试创建一个动态的总生成器,它会在选中相对复选框时为总计添加一个值,但我正在努力使用选择器逻辑。任何人都可以指出我哪里出错了,我是JQuery的初学者。这就是我所拥有的

function calculateSelected(){
    var sum = 0;
    $('tr input:checked .price').each(function() {
            sum += parseFloat($(this).text());
        });
    $('#total').html(sum)
}

这是表格的简化版本

<table>
<tr>
<td><input type="checkbox" value='1' /><td>
<td class='price'>100</td>
</tr>
<tr>
<td><input type="checkbox" value='1' /><td>
<td class='price'>100</td>
</tr>
<tr>
<td><input type="checkbox" value='1' /><td>
<td class='price'>100</td>
</tr>
<tr>
<td><input type="checkbox" value='1' /><td>
<td class='price'>100</td>
</tr>
<tr>
<td>Total<td>
<td id='total'></td>
</tr>
</table>

2 个答案:

答案 0 :(得分:2)

这究竟是什么选择?

$('tr input:checked .price')

你的孩子如何输入?如果您想选择具有等级价格的下一个td,您可以这样做:

$('tr input:checked').parent().next('td.price')

答案 1 :(得分:1)

很像Mark的答案,你也可以使用Siblings method

$('tr input:checked').parent().siblings('td.price')