Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.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 动态创建jS/jQuery多数组_Javascript_Jquery_Arrays_Multidimensional Array - Fatal编程技术网

Javascript 动态创建jS/jQuery多数组

Javascript 动态创建jS/jQuery多数组,javascript,jquery,arrays,multidimensional-array,Javascript,Jquery,Arrays,Multidimensional Array,我在为我的一个项目创建特定数组时遇到问题。我需要始终包含以下字段的数组: [id | Type | nbItems] 然后在它上面: m_名称:m_值: 但这可能是随机的,我可以有1到无限的m_name/m_值 [id | Type | nbItems] -> m_name : weblink m_value : http://xxx.com [id | Type | nbItems] -> m_name : t

我在为我的一个项目创建特定数组时遇到问题。我需要始终包含以下字段的数组:

[id | Type | nbItems]

然后在它上面:

m_名称:m_值:

但这可能是随机的,我可以有1到无限的m_name/m_值

[id | Type | nbItems] ->    m_name : weblink
                            m_value : http://xxx.com


[id | Type | nbItems] ->    m_name : text
                            m_value : Google

                            m_name : icon
                            m_value : icon.png

                            m_name : weblink
                            m_value : http://xxx.com
希望这足够清楚

编辑

function readItem()
{
    var array = XMLDoc.getElementsByTagName("m_params")[curParam].getAttribute("enc:arraySize");

// m_params => nBItem

    var node = XMLDoc.getElementsByTagName("item")[itemCpt].getElementsByTagName("m_type")[0];
    var type = node.childNodes[0].nodeValue;

// type

    node = XMLDoc.getElementsByTagName("item")[itemCpt].getElementsByTagName("m_id")[XMLDoc.getElementsByTagName("item")[itemCpt].getElementsByTagName("m_id").length-1];
    var id = node.childNodes[0].nodeValue;

// id

    var i;
    for (i = 0; i < array; i++) {
        readValue(i, XMLDoc);
    }

    itemCpt = itemCpt + i + 1;

    var child = XMLDoc.getElementsByTagName("m_childs")[curParam].getAttribute("enc:arraySize");
    curParam++;

    for (var c = 0; c < child; c++) {
        readItem(curParam, XMLDoc);
    }
} 

function readValue(i)
{

var item;

var node = XMLDoc.getElementsByTagName("m_params")[curParam].getElementsByTagName("m_name")[i];
item = node.childNodes[0].nodeValue;
// m_name

node = XMLDoc.getElementsByTagName("m_params")[curParam].getElementsByTagName("m_value")[i];
item = item.concat('\n' + node.childNodes[0].nodeValue);

// m_value
函数readItem()
{
var array=XMLDoc.getElementsByTagName(“m_参数”)[curParam].getAttribute(“enc:arraySize”);
//m_参数=>nBItem
var node=XMLDoc.getElementsByTagName(“项目”)[itemCpt].getElementsByTagName(“m_类型”)[0];
变量类型=节点。子节点[0]。节点值;
//类型
node=XMLDoc.getElementsByTagName(“item”)[itemCpt].getElementsByTagName(“m_id”)[XMLDoc.getElementsByTagName(“item”)[itemCpt].getElementsByTagName(“m_id”).length-1];
var id=node.childNodes[0].nodeValue;
//身份证
var i;
对于(i=0;i

}

如果需要添加具有某些已知值的项目,可以尝试以下操作:

var itemsList = [];

itemsList.push({
        id:1,
        Type:"Some",
        nbItems:[{
             m_name : "weblink",
             m_value : "http://xxx.com"
        }]
});


itemsList.push({
        id:2,
        Type:"AnotherSome",
        nbItems:[{
            m_name : "text",
            m_value : "Google"
        },{
            m_name : "icon",
            m_value : "icon.png"
        },{
            m_name : "weblink",
            m_value : "http://xxx.com"
        }]
});

是的,但一切都必须是动态的。。。项目也是如何动态获取项目?