javascript - 使用动态文本框计算

标签 javascript

我正在使用动态文本框。有了这个动态文本框,我想执行一个计算:

计算很简单。我想计算文本框的总值。

在我的示例中,我使用了 3 个带有 ids 的文本框:value1value2value3`。

我想做的计算是: value1 + value2 + value3 = 总计

在我的 javascript 中,我不想定义所有这些值,因为可能的 id 数量是无限的。

所以我的问题是。如何在不定义每个 ID 的情况下获取值的总数。

这是我的脚本:

Items:<br />
<input type="text" name="value[]" id="value1" placeholder="Value 1" onChange="getPrice(this.value)" /> <br />
<input type="text" name="value[]" id="value2" placeholder="Value 2" onChange="getPrice(this.value)" /> <br />
<input type="text" name="value[]" id="value3" placeholder="Value 3" onChange="getPrice(this.value)"/> <br />
<br />
Total: <br />
<input type="text" name="total" id="total" placeholder="Total"/> <br />

<script>
function getPrice() {         
  var numVal1 = Number(document.getElementById("value").value);

  var totalValue = numVal1;
  document.getElementById("total").value = totalValue.toFixed(2);
}
</script>

示例:http://jsfiddle.net/8vhot05u/

最佳答案

您可以遍历所有 value[] 输入并将它们加起来:

 let total = 0;
 for(const el of document.getElementsByName("value[]"))
   total += +el.value;

 document.getElementById("total").value = total;

关于javascript - 使用动态文本框计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53250612/

相关文章:

javascript - 在 firefox 或 chrome 中使用 javascript 访问文件系统?

javascript - angular.js - 处理 Controller 内点击的最简单方法

javascript - jQuery UI 事件范围问题

javascript - 如何为表格的单元格设置方向?

javascript - 无法在 Android 设备上运行 React-Native 示例代码

javascript - 交换两个 DIV 元素? (预览一个而另一个占据整个页面) - EDITED : Swapping DIV and IFRAME

javascript - 如何使用 ng-repeat 从表中动态创建的输入框中获取输入值?

javascript - 如何使用 DOM 为 CSS 元素提供增量坐标?

javascript - eslint 每个函数的最大行数禁用对象速记

javascript - 我们可以让 IE7 将 FILE TYPE=INPUT 元素视为单个控件吗?