在页面加载时添加表的列

时间:2014-02-24 07:34:45

标签: javascript jquery

我在页面加载时创建了一个表

<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作为结果

3 个答案:

答案 0 :(得分:2)

试试这个:

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

http://jsfiddle.net/pTn2V/

修改: 如果您有双打,也可以使用parseFloat()

答案 1 :(得分:0)

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

                 });
                 alert(total); 
             }    

          );

 </script>

答案 2 :(得分: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>