如何在JavaScript中遍历表行和单元格并添加值?

如何在JavaScript中遍历表行和单元格并添加值?,javascript,html,html-table,Javascript,Html,Html Table,这是我的HTML表,在这个表上我有3行3列,我要做的是把前两列加在一起,把结果放在第三列。任何帮助都将不胜感激 CSS: .tg{边框折叠:折叠;边框间距:0;边框颜色:#bbb;} .tg td{字体系列:Arial,无衬线;字体大小:14px;填充:10px 5px;边框- 样式:实心;边框宽度:0px;溢出:隐藏;分词:普通;边框- 颜色:#bbb;颜色:#594F4F;背景色:#E0FFEB;} .tg th{字体系列:Arial,无衬线;字体大小:14px;字体- 重量:普通;填充:

这是我的HTML表,在这个表上我有3行3列,我要做的是把前两列加在一起,把结果放在第三列。任何帮助都将不胜感激

CSS:


.tg{边框折叠:折叠;边框间距:0;边框颜色:#bbb;}
.tg td{字体系列:Arial,无衬线;字体大小:14px;填充:10px 5px;边框-
样式:实心;边框宽度:0px;溢出:隐藏;分词:普通;边框-
颜色:#bbb;颜色:#594F4F;背景色:#E0FFEB;}
.tg th{字体系列:Arial,无衬线;字体大小:14px;字体-
重量:普通;填充:10px 5px;边框样式:实心;边框-
宽度:0px;溢出:隐藏;分词:正常;边框-
颜色:#bbb;颜色:#493F3F;背景色:#9DE0AD;}
.tg.tg-jf1j{字体大小:粗体;字体大小:20px;颜色:#ffccc9;文本-
对齐:居中;垂直对齐:顶部;}
.tg.tg-yw4l{垂直对齐:顶部;}
HTML:


1.
1.
1.
2.
2.
3.
下面是我尝试在表中循环并将前两列添加到一起的地方

<script type="text/javascript">

    var table = document.getElementsByClassName("tg");

    for (var r = 0; r < 3; r++) {
        var sum1 = 0;

        for (var c = 0; c < 3; r++) {
            if (table[r][c].className == 'tg-yw41') {
                sum1 += isNaN(table[r][c].innerHTML) ? 0 : parseInt(table[r][c].innerHTML);
            }
        }

        document.getElementById('a').innerHTML = sum1;
    }
 </script>

var table=document.getElementsByClassName(“tg”);
对于(var r=0;r<3;r++){
var-sum1=0;
对于(var c=0;c<3;r++){
如果(表[r][c].className=='tg-yw41'){
sum1+=isNaN(表[r][c].innerHTML)?0:parseInt(表[r][c].innerHTML);
}
}
document.getElementById('a').innerHTML=sum1;
}

下面的代码将第一个和第二个
td/th
相加,并在第三个
td/th
中显示总和

注意:您可以进一步添加Nan和其他内容的错误处理

Jquery代码:

$('table.tg tr').each(function() {
    var third_var = parseInt($(this).find('th:first-child, td:first-child').html()) + parseInt($(this).find('th:nth-child(2), td:nth-child(2)').html());
    $(this).find('th:nth-child(3), td:nth-child(3)').html(third_var);
});
Javascript代码:根据@Alex_89的要求

var table = document.getElementsByClassName("tg");
var t  = table[0];
for (var r = 0; r < t.rows.length; r++) {
    t.rows[r].cells[2].innerHTML = parseInt(t.rows[r].cells[0].innerHTML) + parseInt(t.rows[r].cells[1].innerHTML);
}
var table=document.getElementsByClassName(“tg”);
var t=表[0];
对于(var r=0;r
下面的代码将第一个和第二个
td/th
相加,并在第三个
td/th
中显示总和

注意:您可以进一步添加Nan和其他内容的错误处理

Jquery代码:

$('table.tg tr').each(function() {
    var third_var = parseInt($(this).find('th:first-child, td:first-child').html()) + parseInt($(this).find('th:nth-child(2), td:nth-child(2)').html());
    $(this).find('th:nth-child(3), td:nth-child(3)').html(third_var);
});
Javascript代码:根据@Alex_89的要求

var table = document.getElementsByClassName("tg");
var t  = table[0];
for (var r = 0; r < t.rows.length; r++) {
    t.rows[r].cells[2].innerHTML = parseInt(t.rows[r].cells[0].innerHTML) + parseInt(t.rows[r].cells[1].innerHTML);
}
var table=document.getElementsByClassName(“tg”);
var t=表[0];
对于(var r=0;r
您问题的解决方案
var table=document.getElementById(“tg”);
for(变量i=0,行;行=表。行[i];i++)
{
var-sum1=0;
for(var j=0,col;col=row.cells[j];j++)
{
sum1+=(col.textContent!='')parseInt(col.textContent):0;
}
var a='a'+(i+1).toString();
document.getElementById(a).innerHTML=sum1;
sum1=0;
}
.tg{边框折叠:折叠;边框间距:0;边框颜色:#bbb;}
.tg td{字体系列:Arial,无衬线;字体大小:14px;填充:10px 5px;边框-
样式:实心;边框宽度:0px;溢出:隐藏;分词:普通;边框-
颜色:#bbb;颜色:#594F4F;背景色:#E0FFEB;}
.tg th{字体系列:Arial,无衬线;字体大小:14px;字体-
重量:普通;填充:10px 5px;边框样式:实心;边框-
宽度:0px;溢出:隐藏;分词:正常;边框-
颜色:#bbb;颜色:#493F3F;背景色:#9DE0AD;}
.tg.tg-jf1j{字体大小:粗体;字体大小:20px;颜色:#ffccc9;文本-
对齐:居中;垂直对齐:顶部}
.tg.tg-yw4l{垂直对齐:顶部}

1.
1.
1.
2.
2.
3.
您问题的解决方案
var table=document.getElementById(“tg”);
for(变量i=0,行;行=表。行[i];i++)
{
var-sum1=0;
for(var j=0,col;col=row.cells[j];j++)
{
sum1+=(col.textContent!='')parseInt(col.textContent):0;
}
var a='a'+(i+1).toString();
document.getElementById(a).innerHTML=sum1;
sum1=0;
}
.tg{边框折叠:折叠;边框间距:0;边框颜色:#bbb;}
.tg td{字体系列:Arial,无衬线;字体大小:14px;填充:10px 5px;边框-
样式:实心;边框宽度:0px;溢出:隐藏;分词:普通;边框-
颜色:#bbb;颜色:#594F4F;背景色:#E0FFEB;}
.tg th{字体系列:Arial,无衬线;字体大小:14px;字体-
重量:普通;填充:10px 5px;边框样式:实心;边框-
宽度:0px;溢出:隐藏;分词:正常;边框-
颜色:#bbb;颜色:#493F3F;背景色:#9DE0AD;}
.tg.tg-jf1j{字体大小:粗体;字体大小:20px;颜色:#ffccc9;文本-
对齐:居中;垂直对齐:顶部}
.tg.tg-yw4l{垂直对齐:顶部}

1.
1.
1.
2.
2.
3.

支持th和td的纯js解决方案

window.onload=function(){
var table=document.getElementsByClassName(“tg”)[0];
var rows=table.getElementsByTagName('tr');
对于(变量i=0;i
.tg{边框折叠:折叠;边框间距:0;边框颜色:#bbb;}
.tg td{字体系列:Arial,无衬线;字体大小:14px;填充:10px 5px;边框-
样式:实心;边框宽度:0px;溢出:隐藏;分词:普通;边框-
颜色:#bbb;颜色:#594F4F;背景色:#E0FFEB;}
.tg th{字体系列:Arial,无衬线;字体大小:14px;字体-
重量:普通;填充:10px 5px;边框样式:实心;边框-
宽度:0px;溢出:隐藏;分词:正常;边框-
颜色:#bbb;颜色:#493F3F;背景色:#9DE0AD;}
.tg.tg-jf1j{字体大小:粗体;字体大小:20px;颜色:#ffccc9;文本-
对齐:居中;垂直对齐:顶部}
.tg.tg-yw4l{垂直对齐:顶部}

1.
1.
1.
2.
2.
3.
解决方案