2015-04-07 44 views
-1

我正在使用jQuery。我想用jQuery来计算特定的表格单元格的总和。我的代码是在这里:使用jquery来计算特定表格单元的总和

<table id="table"> 
<tr> 
    <td>Item1</td> 
    <td>Item2</td> 
    <td>Item3</td> 
    <td>Item4</td> 
    <td>Item5</td> 
    <td>Total</td> 
</tr> 

<tr> 
    <td><input type="text" value="1"/></td> 
    <td><input type="text" value="2"/></td> 
    <td><input type="text" value="3"/></td> 
    <td><input type="text" value="4"/></td> 
    <td><input type="text" value="5"/></td> 
    <td><input type="text" /></td> 

</tr> 
<tr> 
    <td><input type="text" value="1"/></td> 
    <td><input type="text" value="2"/></td> 
    <td><input type="text" value="3"/></td> 
    <td><input type="text" value="4"/></td> 
    <td><input type="text" value="5"/></td> 
    <td><input type="text" /></td> 

</tr> 

我想第二和第四列,每一行显示在最后一列的总和(即item3+item5,结果将显示在总列) 。 如何使用jQuery使用for each循环来完成?

回答

2

试试这个:

​​

见演示:Fiddle

2

您可以使用更改处理像

//register the change handler only for 3rd and 5th input elements 
$('#table').find('td:nth-child(3) input, td:nth-child(5) input').change(function() { 
    var $inputs = $(this).closest('tr').find('input'); 
    $inputs.last().val((+$inputs.eq(2).val() || 0) + (+$inputs.eq(4).val() || 0)) 
}).filter('td:nth-child(5) input').change(); //to initialize values 

演示:Fiddle

相关问题