2014-02-24 269 views
1

表的列我创建了一个表时,页面加载添加在页面加载

<table> 
    <tr> 
    <th>name</th> 
    <th>value</th> 
    </tr> 
    <tr> 
    <td>A</td> 
    <td class="col2">1</td> 
    </tr> 
    <tr> 
    <td>B</td> 
    <td class="col2">2</td> 
    </tr> 
    <tr> 
    <td>C</td> 
    <td class="col2">3</td> 
    </tr> 
</table> 

现在我该怎样添加col2列的所有价值,并显示在警报?

在这种情况下,我应该警告框获得6作为结果

+0

将它永远是整数值? – jacqijvv

+0

整数或双总是 – LynAs

回答

2

试试这个:

var total = 0; 
$("table .col2").each(function(){ 
    total += parseInt($(this).html(), 10); 
}); 
alert(total); 

http://jsfiddle.net/pTn2V/

编辑: 您还可以使用parseFloat(),如果你有双打在那里。

+1

基于OP的评论,你可以改变你的方法'parseFloat()' – jacqijvv

0
<script type='text/javascript'> 
     $(document).ready(
      function() { 
       total = 0; 
       $('.col2').each(function(){ 
        total+=parseInt($(this).text()); 

       }); 
       alert(total); 
      }  

     ); 

</script> 
0

这应该是这样的:

你的HTML:

<table> 
    <tr><th>name</th><th>value</th></tr> 
    <tr><td>A</td><td id="val1">1</td></tr> 
    <tr><td>B</td><td id="val2">2</td></tr> 
    <tr><td>C</td><td id="val3">3</td></tr> 
</table> 

那么你的JavaScript,像HTML代码以下后:

<script> 

var sum = 
    parseFloat(parseInt(document.getElementById('val1').innerText) 
      + parseInt(document.getElementById('val2').innerText) 
      + parseInt(document.getElementById('val3').innerText)); 
    alert(sum); 
</script>