Посчитать сумму в html таблице
Как посчитать сумму только тех ячеек из строки в которой есть значения в другой ячейке.
У меня есть таблица
<table>
<tr><td>1</td><td><span class="check">+</span></td></tr>
<tr><td>5</td><td></td></tr>
<tr><td>3</td><td><span class="check">+</span></td></tr>
</table>
Мне нужно получичть сумму 1 + 3 = 4
Ответы (2 шт):
Автор решения: Denis640Kb
→ Ссылка
var tr = document.getElementsByTagName('tr');
var summ = 0;
for (let i=0;i<tr.length;i++){
var td = tr[i].getElementsByTagName('td');
for (let z=0;z<td.length;z++){
if (z+1 < td.length) {
if (td[z + 1].innerText) {
summ += +td[z].innerText;
}
}
}
}
console.log(summ);
<table>
<tr><td>1</td><td><span class="check">+</span></td></tr>
<tr><td>5</td><td></td></tr>
<tr><td>3</td><td><span class="check">+</span></td></tr>
</table>
Автор решения: Kirill
→ Ссылка
Dao jQuery:
let sum = 0;
$("table td").each(function() {
if ($(this).text() == "+") {
sum += parseInt($(this).closest("tr").find('td:first-child').html());
}
})
console.log(sum);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
<tr><td>1</td><td><span class="check">+</span></td></tr>
<tr><td>5</td><td></td></tr>
<tr><td>3</td><td><span class="check">+</span></td></tr>
</table>