Javascript 使用ng选项设置所选项目无效
我使用以下数组使用ng选项填充选择下拉列表,但当下拉列表显示时,我无法设置选择的选项 下面是数据数组Javascript 使用ng选项设置所选项目无效,javascript,angularjs,ng-options,Javascript,Angularjs,Ng Options,我使用以下数组使用ng选项填充选择下拉列表,但当下拉列表显示时,我无法设置选择的选项 下面是数据数组 { 'vehicle_year_id': 12, 'vehicle_color_id': 522, 'start_date': 'Thu Mar 26 2015 01:22:48 GMT+0000 (UTC)',
{
'vehicle_year_id': 12,
'vehicle_color_id': 522,
'start_date': 'Thu Mar 26 2015 01:22:48 GMT+0000 (UTC)',
'end_date': 'Mon Sep 15 2014 14:37:15 GMT+0000 (UTC)',
'meta': {
'colors': [{ 'id': 522, 'caption': 'Green' }, { 'id': 523, 'caption': 'Blue' }],
'years': [{ 'id': 12, 'year': 2015 }, { 'id': 13, 'year': 2016 }]
},
'quantity': 8,
'duration': 10
},
和部分代码
<select ng-model="details.vehicle_color_id" ng-init="details.vehicle_color_id || details.meta.colors[0].id" class="form-control" ng-options= "color.id as color.caption for color in details.meta.colors track by color.id">
</select>
我可以在下拉列表中看到数据列表,但所选字段根本不显示。使用该选项的正确方式是什么
更新:
我只是做了以下更改
<select ng-model="details.vehicle_color_id" ng-init="details.vehicle_color_id=(details.vehicle_color_id || details.meta.colors[0].id)" class="form-control" ng-options= "color.id as color.caption for color in details.meta.colors" ng-change="getValue($index)">
</select>
并使用getValue()检查模型的值,它显示了正确的数据,并且选择了默认值。我很好奇为什么会这样 您的
ng init
应该设置ng model
范围变量的值
标记
<select ng-model="details.vehicle_color_id"
ng-init="details.vehicle_color_id=(details.vehicle_color_id || details.meta.colors[0].id)"
class="form-control"
ng-options="color.id as color.caption for color in details.meta.colors"
ng-change="getValue($index)">
</select>
谢谢,但这对我不起作用。我还是有同样的问题