【问题标题】:For loop inside a for loop - to grab names from a json arrayfor 循环内的 for 循环 - 从 json 数组中获取名称
【发布时间】:2015-06-13 20:48:56
【问题描述】:

我有一个容器,每行有 4 列。我正在尝试使用 for 循环从 json 数组中获取带有 ajax 的每个列标题。我能够用一个 for 循环在一行中做到这一点。

var i = 0;
var z = 1;

for(z; z < 35; i++, z++) {
    var ingredientLocation = '.row div:nth-child(' + z + ') .inner-rec-box h1';        
    $(ingredientLocation).text(this[0].children[i].categoryName);
}

这个循环只是给每一行循环的前 4 个结果,而不是继续到下一行。

我有 4 - 5 行我希望这个循环也发送标题,所以我尝试在第一个循环中添加第二个循环,基本上通过前 4 个标题进入第一行循环,然后离开内部循环并跳转到第二行继续循环 i 值,以此类推。以下是我对此的尝试

var z = 1;
var i = 0;

for(z; z < 5; z++) {
    var ingredientLocation = '.conatiner .row:nth-child(' + z + ') .inner-rec-box h1';
    for(i; i < 5; i++){
        $(ingredientLocation).text(this[0].children[i].categoryName);
    }
}

【问题讨论】:

  • 欢迎来到 Stack Overflow,请在发布问题时格式化您的代码。谢谢@BrianGlaz

标签: jquery arrays ajax json for-loop


【解决方案1】:

每次启动内部循环时都必须重置内部索引

var z;
var i;

for (z = 0; z < 5; z++) {    
    var ingredientLocation = '.conatiner .row:nth-child(' + z + ') .inner-rec-box h1';    
    // set i to 0 when starting a row
    for (i = 0; i < 5; i++) {
      $(ingredientLocation).text(this[0].children[i].categoryName);
    }   
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-28
    • 2020-09-08
    • 2015-03-21
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多