嵌套ng-repeat中的angularjs ng-model

时间:2014-04-06 13:33:36

标签: angularjs angularjs-ng-repeat angular-ngmodel

我不知道这是否是重复的问题。 我已经开始探索AngularJs了。现在我正面临这个问题。 以下是示例demo example

当我点击第一个选择下拉时,下面也会更新。我知道这是由于相同的ng模型。那么,我怎样才能为两个不同的选择下拉列表生成不同的ng-model。请指导我,因为我对angularjs世界很新。

2 个答案:

答案 0 :(得分:1)

您可以绑定到您正在显示的color对象:

<select ng-model="color.levelmodel" ng-options="c.id for c in levels">
    <option value="">-- choose color --</option>
</select>

或像这样的selecteds对象:

<select ng-model="selecteds[$index].levelmodel" ng-options="c.id for c in levels">
    <option value="">-- choose color --</option>
</select>

$indexcolor集合中colors对象的当前索引。

答案 1 :(得分:1)

我会绑定到每种颜色的级别属性。这样,您可以使用属于每种颜色的颜色,而不是尝试选择值的随机列表,这样更有意义。

$rootScope.colors = [{
      name: 'black',
      shade: 'dark',
      level: {'id': '' }
    }, {
      name: 'white',
      shade: 'light',
      level: {'id': '' }
}];

$scope.levels = [{
    "id": "1" 
}, {
    "id": "2" 
}, {
    "id": "3"
}];

<li ng-repeat="color in colors">
    <select ng-model="color.level" ng-options="c.id for c in levels">
        <option value="">-- choose color --</option>
    </select>
</li>