我是Web开发和AngularJS的新手,我一直在努力解决这个问题。对不起,英语不好。
我使用ng-repeat创建正确数量的下拉列表,因为这是动态的。下拉菜单中的标签如下:
Test1: <dropdown here>
Test2: <dropdown here> ...etc.
我有一个返回数组的HTTP请求。如果数组中包含“ Test1 State1”,我希望Test1:的下拉列表默认更改为State1。 (继续所有测试)
我该怎么办?
HTML
<div ng-repeat="o in options track by $index">
<label for="{{::$o}}" class="col-xs-3">{{o}}:</label>
<select id="{{::$o}}" ng-model="stateModel"
ng-options="state.changeToState for state in states"
ng-change="onStateSelect(stateModel.platformReleaseNotes, o)">
{{state}}
</select>
</div>
$scope.states = [
{
changeToState: 'State1',
notes: 'Hello World'
},
{
changeToState: 'State2',
notes: 'Goodbye'
},
{
changeToState: 'State3',
notes: ' is State3'
},
{
changeToState: 'State4',
notes: ' is State4'
}
];
答案 0 :(得分:0)
如果要为所有下拉菜单使用不同的值,则不能共享模型。 所有下拉菜单的 ng-model 应该不同,这可以通过以下所示的下拉列表阵列来实现。
$scope.dropDowns = [{
dropDownName: 'Test1:',
id: 'test1',
selectedOption: ''
}, {
dropDownName: 'Test2:',
id: 'test2',
selectedOption: ''
}];
请参阅中的运行示例 http://plnkr.co/edit/jsAn1jwGkQfxXK5I9G6J?p=preview