GetElementsByName for循环的DOM

时间:2016-03-03 14:56:48

标签: javascript loops dom getelementsbyname

我有一个小问题"。我尝试为一个循环换一个 表中的每一行都有"getElementsByName"

我尝试循环一些值。 价格*数量*折扣*税(select.options)=折扣后的最终价格。

AD :(您必须打开“完整视图”)

对于单行,它getElementById效果很好。但是,需要创建下一行(Button Add Position)。所以我选择了GetElementsByName

还为他计算了价值(到位"退税后#34;)

- 编辑 -

我做了一个循环" For"。 在html代码中,我有很多相同的字段"命名为" (例如,cena,ile,拉巴特等) 因此,如果我有3行这个字段,我想分别为每一行计算。但我的循环不起作用。

完整视图,你可以在这里看到: http://codepen.io/warhero/pen/WwvLZE (121行JS)

我的JS代码:

var i;
for (i = 0; i < document.getElementsByName('kwotarabat').length; i++) {
  var cena = parseInt(document.getElementsByName('cena')[i].value);
  var ile = parseInt(document.getElementsByName('ile')[i].value);
  var rabat = parseInt(document.getElementsByName('rabat')[i].value);
  var vat = document.getElementsByName('vat')[i].options[document.getElementsByName('vat')[i].selectedIndex].value;
  // vat value
  var wynik = (ile * cena * vat);
  // the net value
  var wynik2 = cena * ile;
  // net amount after discount
  var wynikRabat = (wynik2 * (rabat / 100));
  // gross amount after discount
  var wynikRabatVat = (wynik * (rabat / 100));
  // net amount after discount (display for customers)
  var wynikNetto = (wynik2 - wynikRabat);
  document.getElementsByName('kwotarabat')[i].innerHTML = (wynik + wynik2 - wynikRabat - wynikRabatVat).toFixed(2);
}   

在这里&gt;&gt; http://codepen.io/warhero/pen/ONVEmZ
是单行代码,计算正确。

任何想法?

0 个答案:

没有答案