Javascript循环问题

时间:2016-07-22 18:10:51

标签: javascript

我的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];
}
你能告诉我这里有什么问题吗? 感谢

2 个答案:

答案 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])
}