2
06/11/2024 7:20 pm
Inicio del tema
Write a JS function that finds the first table in a document and sums the values in the last column. The result is then displayed in an element with ID "sum".
Input/Output:
There will be no input/output, your program should instead modify the DOM of the given HTML document.
Sample HTML:
<table>
<tbody>
<tr><th>Product</th><th>Cost</th></tr>
<tr><td>Beer</td> <td>2.88</td></tr>
<tr><td>Fries</td> <td>2.15</td></tr>
<tr><td>Burger</td> <td>4.59</td></tr>
<tr><td>Total:</td> <td id="sum"></td></tr>
</tbody>
</table>
<button onclick="sum()">Sum</button>
Examples:

1 respuesta
2
06/11/2024 7:21 pm
Here is my solution:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<table border="1">
<tbody>
<tr>
<th>Product</th>
<th>Cost</th>
</tr>
<tr>
<td>Beer</td>
<td>2.88</td>
</tr>
<tr>
<td>Fries</td>
<td>2.15</td>
</tr>
<tr>
<td>Burger</td>
<td>4.59</td>
</tr>
<tr>
<td>Total:</td>
<td id="sum"></td>
</tr>
</tbody>
</table>
<br>
<button onclick="sum()">Sum the Numbers from <strong>Cost</strong></button>
<script>
function sum() {
let rows = document.querySelectorAll("table tr td:last-child");
let sum = 0;
for (let i = 0; i < rows.length-1; i++) {
sum += Number(rows[i].textContent);
}
document.getElementById("sum").textContent = sum;
}
</script>
</body>
</html>
