2013-07-09 54 views
3

我怎样才能总结td输入值在一个TR?总和TD在一个TR

<table> 
    <tr class="here"> 
     <td><input type="text" class="one" value="2" /></td> 
     <td><input type="text" class="two" value="4" /></td> 
     <td><input type="text" class="three" value="5" /></td> 
     <td><input type="text" class="four" value="3" /></td> 
     <td><input type="text" class="sum" /></td> 
     <td><input type="text" class="five" value="2" /></td> 
    </tr> 
    <tr class="here"> 
     <td><input type="text" class="one" value="2" /></td> 
     <td><input type="text" class="two" value="4" /></td> 
     <td><input type="text" class="three" value="5" /></td> 
     <td><input type="text" class="four" value="3" /></td> 
     <td><input type="text" class="sum" /></td> 
     <td><input type="text" class="five" value="2" /></td> 
    </tr> 
    <tr class="here"> 
     <td><input type="text" class="one" value="2" /></td> 
     <td><input type="text" class="two" value="6" /></td> 
     <td><input type="text" class="three" value="4" /></td> 
     <td><input type="text" class="four" value="2" /></td> 
     <td><input type="text" class="sum" /></td> 
     <td><input type="text" class="five" value="2" /></td> 
    </tr> 
    <tr class="here"> 
     <td><input type="text" class="one" value="5" /></td> 
     <td><input type="text" class="two" value="2" /></td> 
     <td><input type="text" class="three" value="3" /></td> 
     <td><input type="text" class="four" value="8" /></td> 
     <td><input type="text" class="sum" /></td> 
     <td><input type="text" class="five" value="4" /></td> 
    </tr>  
</table> 

LIVE DEMO

我可以总结与功能的所有值。每次但如何让这对每个TR,不是TD?

我想输入与TWO类和THREE类和FOUR类的总和值,并将其添加到同一TR类SUM输入。

在我的例子应该是:

2 4 5 3 **12** 2 // 4+5+3 
2 4 5 3 **12** 2 // 4+5+3 
2 6 4 2 **12** 2 // 6+4+2 
5 2 3 8 **13** 4 // 2+3+8 
+2

请不要链接到可消失外部资源,从而使你的问题无用给他人。包括一个样本作为你的问题的一部分。 –

+2

你做了你自己的尝试吗? – George

回答

10

您的代码应该是这样的。

您需要遍历td与有问题的特定类并总结这些值。然后将该值分配给您所指的输入。

$('tr.here').each(function(){ 
    var sum = 0; 
    $('.two, .three, .four', this).each(function() { 
     sum += parseFloat(this.value); 
    }); 

    $('.sum', this).val(sum); 
}) 

Check Fiddle

+2

为什么会有人低估这个答案?它的功能与OP描述的完全一致。 – nickb

+0

谢谢,工作完美:)但为什么在第二个每个都是“这个”? – user2565589

+2

这是上下文选择器。你只想总结'当前行'类中的值,但不是所有的值都在一起..这与$(this).find('。two,。三,.find')'..检查文档http://api.jquery.com/jQuery/#jQuery1 –

1

试试下面的代码

$('tr.here').each(function() { 
    var sum = parseFloat($(this).find('.two').val()) + parseFloat($(this).find('.three').val()) + parseFloat($(this).find('.four').val()); 

    $(this).find('.sum').val(sum); 
}) 

入住这Fiddle