如何对所有行内的输入求和?
How to SUM the inputs inside all rows?
我每次都使用脚本生成一个新行,这些值作为输入进入 table
我想要的只是一个按钮,用于将这些输入中的所有值汇总到一个输入中。
总输入id为valueall
这是我用过的代码:
function updateSubTotal() {
var table = document.getElementById("empTable");
for (var i = 0, row; row = table.rows[i]; i++) {
for (var cell; cell = row.cells[1];){
var inp = cell.children[0];
}
}
document.getElementById("valueall").value = inp.value;
}
当我把它放在 var inp = cell.children[0]; 下时,该代码工作正常,但它不断重复与循环相同的行值。
这是table:
<form>
<table id="empTable">
<tr>
<td>Products in the invoice</td>
</tr>
</table>
</form>
你没有总结任何东西。您需要实际总结 <input>
字段的内容:
function updateSubTotal() {
var sum = 0;
var table = document.getElementById("empTable");
for (var i = 0, row; row = table.rows[i]; i++) {
for (var cell; cell = row.cells[1];){
var inp = cell.children[0];
sum += Number(inp.value)
}
}
document.getElementById("valueall").value = sum;
}
我每次都使用脚本生成一个新行,这些值作为输入进入 table 我想要的只是一个按钮,用于将这些输入中的所有值汇总到一个输入中。
总输入id为valueall
这是我用过的代码:
function updateSubTotal() {
var table = document.getElementById("empTable");
for (var i = 0, row; row = table.rows[i]; i++) {
for (var cell; cell = row.cells[1];){
var inp = cell.children[0];
}
}
document.getElementById("valueall").value = inp.value;
}
当我把它放在 var inp = cell.children[0]; 下时,该代码工作正常,但它不断重复与循环相同的行值。
这是table:
<form>
<table id="empTable">
<tr>
<td>Products in the invoice</td>
</tr>
</table>
</form>
你没有总结任何东西。您需要实际总结 <input>
字段的内容:
function updateSubTotal() {
var sum = 0;
var table = document.getElementById("empTable");
for (var i = 0, row; row = table.rows[i]; i++) {
for (var cell; cell = row.cells[1];){
var inp = cell.children[0];
sum += Number(inp.value)
}
}
document.getElementById("valueall").value = sum;
}