首页 > 解决方案 > 如何在特定条件下在 javascript 中创建数字循环

问题描述

我有数组 var arrayObject 作为 attribute_1([original]、[Cool Mint]、[Freshburst]),它们每个都有三个与 attribute_2 相同的属性([250]、[500]、[750])。
数组在 con

我将 var num 设置为在字段 Product No 上循环一个数字,但我想要的数字看起来不对,我希望它从 0 到 8 排序,如 0、1、2、3、4、5、6、7、8 . 我应该为此做什么样的条件?

var num = 0;
$.each(arrayObject, function(key,value) {
    var attr1Data = Object.keys(value)[0],
        attr2Data = Object.values(value)[0],
        i = 0;

    html += '<tr>';
        html += '<td rowspan="'+rowspan+'">'+attr1Data+'<input name="post[item]['+(key)+'][attribute1]" type="hidden" value="'+attr1Data+'" /></td>';
        html += '<td>'+attr2Data[i]+'<input name="post[item]['+(key)+'][attribute2][]" type="hidden" value="'+attr2Data[i]+'" /></td>'; 
        html += '<td><input class="pn" placeholder="..." name="post[item]['+(key)+'][product_no][]" type="text" value="'+num+'" /></td>';
        html += '<td><input class="as" size="4" name="post[item]['+(key)+'][actual_stock][]" type="text" value="0" /></td>';
        html += '<td><input class="p" size="7" name="post[item]['+(key)+'][price][]" type="text" value="0.00" /></td>';
    i++;
    html += '</tr>';
    while(i < rowspan) {

        html += '<tr>';
        html += '<td>'+attr2Data[i]+'<input name="post[item]['+(key)+'][attribute2][]" type="hidden" value="'+ attr2Data[i] +'" /></td>';
        html += '<td><input class="pn" placeholder="..." name="post[item]['+(key)+'][product_no][]" type="text" value="'+num+'" /></td>';
        html += '<td><input class="as" size="4" name="post[item]['+(key)+'][actual_stock][]" type="text" value="0" /></td>';
        html += '<td><input class="p" size="7" name="post[item]['+(key)+'][price][]" type="text" value="0.00" /></td>';
        html += '</tr>';
        i++;
    }
    num++;
})

结果

标签: javascriptjqueryarrays

解决方案


推荐阅读