我得到了带有整数值的div(总是),但不幸的是只有类(不能添加id,因为它们是由其他应用程序在循环中生成的,我不能乱用)
<div class="aaposition">3</div>
<div class="aaposition">4</div>
<div class="aaposition">5</div>
<div class="bbposition">30</div>
<div class="bbposition">30</div>
<div class="bbposition">30</div>
所以我创建了两个节点列表(两个列表的长度都很准确)。
aalist = document.getElementByClassName('aaposition');
bblist = document.getElementByClassName('bbposition');
我需要做的是将aaitem [i]与bbitem [i]相乘并将其显示在某处
sumlist = 0;
for (i = 0; i < aalist.length; i++) {
sumlist += aalist[i] * bblist[i];
}
showdiv.innerHTML = sumlist;
但我不知道如何从节点列表中选择这些值,我如何选择我感兴趣的价值?
它是.innerHTML
,.value
还是什么?
我发现的只是样式示例(.style.background
...等。)。
我还需要解析为整数吗?我需要将NodeList转换为数组吗?
答案 0 :(得分:2)
您需要使用document.getElementsByClassName
并修复.length
的拼写错误,您还需要调用节点.innerHTML
...
var result = document.getElementById('result'),
aalist = document.getElementsByClassName('aaposition'),
bblist = document.getElementsByClassName('bbposition'),
sumlist = 0;
for(var i=0; i<aalist.length; i++) {
sumlist += aalist[i].innerHTML * bblist[i].innerHTML;
}
result.innerHTML = sumlist;