如何获取嵌套json的下拉值

时间:2016-03-10 09:01:40

标签: angularjs

这是我的json

This.selectedColumn = null;
            This.dynamicCmbItems = [{
                id: 1,
                label: 'aLabel',
                subItem: [
                    {
                        name: 'aSubItem1'
                    },
                     {
                         name: 'aSubItem2'
                     },
                      {
                          name: 'aSubItem3'
                      }
                ]
            }, {
                id: 2,
                label: 'bLabel',
                subItem: { name: 'bSubItem' }
            }];

在html中我有两个<select> s,第一个显示标签,第二个应显示subitem-&gt;所选标签的名称例如:如果我在第一个下拉列表中选择aLabel,则第二个下拉列表应显示aLabel的子项目。我能够加载第一个下拉列表。我应该如何加载第二个下拉列表?

html文件:

<select ng-options="item.label for item in vm.dynamicCmbItems track by item.id" ng-model="vm.selectedColumn" ></select>
<select ng-options="item.subItem.name for item in vm.dynamicCmbItems" ng-model="vm.selected"></select>

我想做类似

的事情
<select ng-options="item.subItem.name for item in vm.dynamicCmbItems | fileter: {item.label : vm.selectedColumn}" ng-model="vm.selected"></select>

1 个答案:

答案 0 :(得分:0)

第一个选择的

ng-model已经为你绑定了整个对象,所以在第二个选择中你可以使用

<select ng-options="item.name for item in vm.selectedColumn.subItems" ng-model="vm.selected"></select>