2

I want to add the numbers in the table cell without getting NaN.

<table id="sample" border="1">
<tr>
 <td>1</td>
 <td>2</td>
 <td>1</td>
 <td></td>
 <td>1</td>
 <td>3</td>
</tr>
<tr>
 <td></td>
</tr>
</table>

Fiddle:

How it is possible?

Brijesh Bhatt
  • 3,810
  • 3
  • 18
  • 34
jack rose
  • 97
  • 11

4 Answers4

4

Check this

$(document).ready(function() {
    
    var colTotal=0;
    var col=$("#sample tr td");
    
    col.each(function() {
        colData=parseInt($(this).text(), 10);

        if (colData) {
            colTotal+=parseInt(colData);
        }
    });
    
    $('#sample tr:last td').text(colTotal);
         
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<table id="sample" border="1">
    <tr>
        <td>1</td>
        <td>2</td>
        <td>1</td>
        <td></td>
        <td>1</td>
        <td>3</td>
    </tr>
    <tr>
        <td></td>
    </tr>
</table>
Vigneswaran Marimuthu
  • 2,452
  • 13
  • 16
3

use isNaN() function like:

$(document).ready(function() {

    var colTotal=0;
 var col=$("#sample tr td");
    $(col).each(function()
        {
                colData=$(this).text();
                colTotal+=isNaN(parseInt(colData)) ? 0: parseInt(colData);
        });
    $('#sample tr:last td').text(isNaN(colTotal) ? 0: colTotal);

});

DEMO

Brijesh Bhatt
  • 3,810
  • 3
  • 18
  • 34
3

use $.isNumeric(colData)
updated your link

ozil
  • 6,930
  • 9
  • 33
  • 56
3

Just skip the blank values

$(document).ready(function() {
 var colTotal=0;
    $("#sample td").each(function()
        {
            if ($(this).text())
                colTotal+=parseInt($(this).text());
        });
    $('#sample tr:last td').text(colTotal);                             
});
Sumit
  • 1,619
  • 1
  • 11
  • 24