javascript - 一个关于批量添加的需求,暂时没有实现的思路,求各位帮助
PHP中文网
PHP中文网 2017-04-11 09:03:53
[JavaScript讨论组]

关于批量添加,目前的需求是,后台会传输过来一个对象,这个对象的格式是这样的:

[
    {"key":"尺寸","value":["339","122","232","412","323"]},
    {"key":"颜色","value":["green","yellow","blue","pink","red"]},
    {"key":"品牌","value":["ln","nike","ad","kw"]},
    {"key":"产地","value":["us","ch","jp","ko"]},
    {"key":"服务器","value":["国服","美服","欧服","东南亚服"]}
]

然后呢,需要对应的生成出来表格,这个对应方式是类似99乘法表的,一层一层的循环。如果是一个固定的数据的话,可以用这种办法生成。

var arrData = JSON.parse(data);
    $.each(arrData[0].value,function(i,e){
        $.each(arrData[1].value,function(j,r){
            $.each(arrData[2].value,function(k,t){
                $.each(arrData[3].value,function(l,y){
                    $.each(arrData[4].value,function(m,u){
                        html += '' + e + '' + r + '' + t + '' + y + '' + u + '价格库存操作';
                    })
                })
            })
        })
    })
    tbody.html(html);

但是,后台传输出来的数据的条数是不固定的,数组中可能会有1条数据,2条数据,甚至10条数据。那么这个表格应该如何去生成呢?

补充:
最终生成的效果。
如果数据为

[
    {"key":"尺寸","value":["339","122"]},
    {"key":"颜色","value":["green","yellow"]}
]

生成的效果为

实现的循环为:

$.each(arrData[0].value,function(i,e){
    $.each(arrData[1].value,function(j,r){
        html += '' + e + '' + r + '价格库存操作';
        })
    })

当数据为三层的时候,数据为

[
    {"key":"尺寸","value":["339","122"]},
    {"key":"颜色","value":["green","yellow"]},
    {"key":"品牌","value":["ln","nike"]},
]

组合出的表格效果为:

循环的代码为:

$.each(arrData[0].value,function(i,e){
    $.each(arrData[1].value,function(j,r){
        $.each(arrData[2].value,function(k,t){
                html += '' + e + '' + r + '' + t + '价格库存操作';
            })
        })
    })

如果数据的条数更多,那么就会继续嵌套循环。 现在需要实现的目标是不固定数据条数的方法,求各位指导思路- -

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号