Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在java脚本中通过二维循环创建数组对象_Javascript_Arrays_For Loop_Nested Loops_Associative Array - Fatal编程技术网

Javascript 如何在java脚本中通过二维循环创建数组对象

Javascript 如何在java脚本中通过二维循环创建数组对象,javascript,arrays,for-loop,nested-loops,associative-array,Javascript,Arrays,For Loop,Nested Loops,Associative Array,我有两个输入和两个选择按钮,它们是用增量id单击创建的,如 id=commodity0,id=commodity1,id=commodity2 我想发送一个数组中的所有数据 作为子主数组的输入的id类商品的一部分,此数组中包含嵌套数组rest输入id的数量 一般概念如下 data = [ commodity = [ "0" : " value " "1" : " value " "2" : " value " ],

我有两个输入和两个选择按钮,它们是用增量id单击创建的,如 id=commodity0,id=commodity1,id=commodity2

我想发送一个数组中的所有数据 作为子主数组的输入的id类商品的一部分,此数组中包含嵌套数组rest输入id的数量

一般概念如下

data = [
     commodity = [
         "0" : " value "
         "1" : " value "
         "2" : " value "
     ],
     price = [
         "0" : " value "
         "1" : " value "
         "2" : " value "
     ],
]
我的代码我想执行这个

var arr = ['commodity','price','packages_count','packages_type','gross_weight','net_weight','gunit','nunit'];
var data = [];
for (var n in arr){
    model.find('input[id*='+ arr[n] +'] , select[id*='+ arr[n] +']').each(function () {

        var key = $(this).attr('id').match(/[0-9]+/)[0];
        var val = $(this).val();

       **--thanks for complete code from here** 

    });
}

感谢您的帮助。

首先,您预期提供的数组不是有效的JavaScript数组。无论如何,试试这样,也许这就是你想要的:

    var arr = ['commodity','price','packages_count','packages_type','gross_weight','net_weight','gunit','nunit'];
    var data = [];
    for (var n in arr){
        var temp = [];
        model.find('input[id*='+ arr[n] +'] , select[id*='+ arr[n] +']').each(function (){

            var key = $(this).attr('id').match(/[0-9]+/)[0];
            var val = $(this).val();
            temp.push({[key]:val});


        });
        data[n] = temp;
    }

感谢兄弟的回复,但如果我的代码逻辑错误或我的思维方式错误,它不会像预期的那样工作help@MohamedElboraey你必须给我们更多的信息,你尝试了什么,你得到了什么等,否则我们无法帮助你!