我的div类数组看起来像这样
[ <div class="divtitle" style="height: 22px;">A</div> ,
<div class="divtitle" style="height: 22px;">W</div> ,
<div class="divtitle" style="height: 22px;">E</div> ,
<div class="divtitle" style="height: 22px;">AA</div> ]
我有这个javascript函数
var products= document.getElementsByClassName("divtitle")[0].innerHTML;
return products;
但是现在我在div中有超过1个产品名称,我想知道如何使用此函数在JavaScript中编写循环。
var products= document.getElementsByClassName("divtitle").innerHTML;
var arrayLength = products.length;
for (var i = 0; i < arrayLength; i++) {
return products[i];
}
你能告诉我这里有什么问题吗?
感谢
答案 0 :(得分:1)
假设你的div innerHTML看起来像这样&#34; product1,product2,product3 ..&#34;当你得到它时,产品将是一个字符串,而不是一个列表。
当您循环遍历字符串长度时,实际上会循环遍历其字符。 尝试做这样的事情:
var products= document.getElementsByClassName("divtitle").innerHTML;
return products.split(",")
如果您使用逗号分隔不同的产品,则应返回产品列表。
PS。你的问题有点不清楚,如果你展示一个html元素的例子,例如divtitle的样子,它会有很大的帮助。
答案 1 :(得分:0)
您在for循环中返回整个产品数组。你需要写这样的东西:
var products= document.getElementsByClassName("divtitle").innerHTML;
for (var i = 0; i < products.length; i++) {
/*you will write your code that you want to do with each product here
using the i index, such as: */
console.log(products[i])
}