javascript - 在级联下拉列表所依赖的数组中间添加一个值

标签 javascript arrays push cascadingdropdown

我最终可能会拥有“Title 1E”。这提出了一个问题,因为下面相应的数组要么要求我创建 ["Title 1E", '8'] (我不想这样做),或者为所有潜在的创建占位符标题 1(即更改为 ["Title 2A", '100'] 并创建空白标题 1 的 4-99),从而制作一个充满空行的非常长的菜单。

我会在子子菜单中手动插入适当的数组

如果 submenu[0].push(4,1,""Title 1E", '4' ") 有效,如何将以下内容更改为 ["Title 2A",'5']

希望它有一定道理。我脑子里不太清楚。

(function() {
var submenu= [
        [   ["Title 1A", '0'],
            ["Title 1B", '1'],
            ["Title 1C", '2'],
            ["Title 1D", '3']
        ],

        [       ["Title 2A", '4'],
            ["Title 2B", '5'],
            ["Title 2C", '6'], 
            ["Title 2D", '7']  
        ],


];

//the Array below populates a sub-submenu when a selection is made above


var subsubmenu= [           

[   ["Issue 1A1", 'resonse1a1'],
        ["Issue 1A2", 'response1a2'],
        ["Issue 1A3", 'response1a3'],
        ["Issue 1A4", 'response1a4']
    ],

    [   ["Issue 1B1", 'resonse1b1'],
        ["Issue 1B2", 'resonse1b2'], 
        ["Issue 1B3", 'resonse1b3']
    ],


    [   ["Issue 1C1", 'resonse1c1']
    ],
        // etc...               
        ];

最佳答案

您需要手动循环剩余的项目并手动增加计数器。 像这样

var submenu= [
        [   ["Title 1A", '0'],
            ["Title 1B", '1'],
            ["Title 1C", '2'],
            ["Title 1D", '3']
        ],

        [       ["Title 2A", '4'],
            ["Title 2B", '5'],
            ["Title 2C", '6'], 
            ["Title 2D", '7']  
        ],
];

var insert_at=0;
submenu[insert_at].push(["Title 1E", '4']);

// Since the item will be pushed at the last position in the corresponding array
// We need to increase the counter i.e. item at position 1 for all the following 
//items in the other arrays
for(i=insert_at+1;i<submenu.length;i++){
    for(j=0;j<submenu[i].length;j++){
        submenu[i][j][1]++;
    }
}

// Now display that to confirm that it works ok
for(i=insert_at+1;i<submenu.length;i++){
    for(j=0;j<submenu[i].length;j++){
        document.write(submenu[i][j]);
    }
}

查看http://jsfiddle.net/gunjankarun/zCjY5/

关于javascript - 在级联下拉列表所依赖的数组中间添加一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15377422/

相关文章:

javascript - 如何将 base64 保存到 cordova/ionic 上的图像文件或上传到服务器?

javascript - 仅当元素可见时才执行单击功能

c - 将元素添加到字符串数组

javascript从具有相同对象和值的另一个数组的数组中删除

ios - Urban Airship 的设备 token 不正确?

javascript - 将多属性项推送到数组 JAVASCRIPT

javascript - 如何访问iframe的内部目录

javascript - Jquery remove() 不刷新 div 列表

java : remove words from ArrayList<String>

php - iOS 推送通知消息 - 单击 VIEW 按钮后的操作