在for循环中使用for循环

时间:2012-08-21 01:00:22

标签: javascript arrays loops

我正在为proboards.com编写代码。 该代码将用于为各个样式分类。

在数组中: catEdit[0]是类别名称和 catEdit[1]是用户希望为该cateory提供的id,以便他们可以使用CSS将样式应用于它。

在下面的脚本中,我首先循环遍历数组,然后循环访问用户论坛上的类别,声明了一个参数,并根据参数给出了类别ID。

有些事情是对的。有人可以告诉我我做错了吗?

提前谢谢。

<script type= "text/javascript">
//Individual Category Styles
var catEdit=[
   ["General", "general"],
   ["Tester", "tester"],
   ["New Category", "newcat"]
];

var td= document.getElementsByTagName("td"),i;
  for(i=0; i<catEdit.length;i++){
    for(i=0; i<td.length;i++){
      if(td[i].className== "catbg" && td[i].innerHTML.match(catEdit[i][0])) {
        td[i].id=catEdit[i][1]
      }
    }
  }
</script>

2 个答案:

答案 0 :(得分:6)

你绝对不应该使用i作为两个循环的循环变量。考虑为内循环使用不同的变量。

答案 1 :(得分:4)

你的两个循环都有相同的索引变量i,根本不能正常工作。考虑使用ij作为循环的索引变量:

for (var i = 0; i < catEdit.length; i++) {
  for (var j = 0; j < td.length; j++) {
    ...