html自动求和表格一列嵌套的输入框金额包括新插入行的金额
时间: 2024-10-22 16:07:44 浏览: 12
程序天下:JavaScript实例自学手册
在HTML中创建一个自动求和的表格,其中包含一列嵌套的输入框(通常是`<input type="number">`),并且可以动态添加新行并实时计算总和,你可以这样做:
首先,你需要设置一个基础表格结构,每行有一个单元格用于输入金额,以及一个隐藏的单元格用于存储已输入的累计金额。可以利用JavaScript或者jQuery来动态绑定计算函数。
```html
<table id="dynamicTable">
<thead>
<tr>
<th>金额</th>
<th>总计</th>
</tr>
</thead>
<tbody>
<!-- 使用JavaScript动态生成行 -->
</tbody>
</table>
<!-- 表单元素和按钮,用于添加新行 -->
<form>
<label for="amount">请输入金额:</label>
<input type="number" name="amount" id="amount" required>
<button type="button" onclick="addRow()">添加一行</button>
</form>
<!-- 隐藏的总计列,初始值设为0 -->
<input type="hidden" id="totalSum" value="0">
<script>
function addRow() {
// 添加新的表格行...
}
// 计算当前行和总计的函数
function calculateTotal() {
let total = document.getElementById("totalSum").value;
const newRow = document.querySelector('#dynamicTable tbody tr:last-child');
const lastAmountInput = newRow.querySelector('input[type="number"]');
if (lastAmountInput) {
const newAmount = parseFloat(lastAmountInput.value);
total += newAmount;
newRow.querySelector('.total').textContent = total; // 假设<td class="total"></td> 存储总计
}
document.getElementById("totalSum").value = total;
}
// 初始化并监听输入变化
calculateTotal();
</script>
```
在这个例子中,每当用户输入一个新的金额并点击“添加一行”按钮时,`calculateTotal` 函数会被触发,计算新增加的金额并更新总和。注意实际应用中需要将`addRow` 和`calculateTotal` 功能完善,这里仅提供了一个基本框架。
阅读全文