我有一个包含多个文本框的表单,并且文本框的数量确实会发生变化,具体取决于我从数据库中检索到的值。我想做的是将文本字段值的所有值相乘,因此首先我将它们放入数组中并将它们相乘并将答案发送到文本框。但是我似乎找不到正确的答案。

例如,当我有3个文本框并且在每个文本框中输入1时,我应该得到1x1x1 = 1,但得到的答案是3。当我在每个文本框中输入2时,我应该得到2x2x2 = 8,但是答案是12。

我的代码如下:

JavaScript代码:

function sumfrm(form){
  var totalOdds = 0;
  var odds = document.getElementsByTagName('input');
  var n;
  var i; //
for (i = 0; i < odds.length; ++i) {
  n = parseFloat(odds.item(i).value, 10);
    if (!isNaN(n)) {
       totalOdds += n*n;
   }
}

最佳答案

var totalOdds = 1; //initialize like this
totalOdds = totalOdds * n // do this in your for loop

应该做到的

您目前拥有1x1x1的内容。

开头的totalOdds为0

totalOdds += 1 * 1
是1

再次第二次之后totalOdds += 1 * 1
是2

第三次之后是 3

09-09 23:16