0

これが重複した質問かどうかはわかりません。AngularJs の調査を開始しました。今、私はこの問題に直面しています。これがデモの例 です

最初の選択ドロップダウンをクリックすると、以下も更新されます。これは同じ ng-model が原因であることを知っています。では、2 つの異なる選択ドロップダウンに対して異なる ng-model を生成するにはどうすればよいでしょうか。私はangularjsの世界に非常に慣れていないので、私を案内してください

4

2 に答える 2

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>
于 2014-04-06T13:43:54.470 に答える
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>

コレクション内のオブジェクト$indexの現在のインデックスはどこにありますか。colorcolors

于 2014-04-06T13:41:26.317 に答える