Controller

$scope.formData = {};
$scope.formData.cars = {};
$scope.formData.cars.list = [
    { id: 1, name: 'vw 2'},
    { id: 2, name: 'vw 1'}
];
$scope.formData.cars.selected = $scope.formData.cars.list[0];

html
<select id="bookingCars" class="form-control" ng-model="formData.cars.selected" ng-options="car.code as car.name for car in formData.cars.list">

谁能解释为什么这会添加第三个空白元素以及为什么第一个属性( vw 2 )不是默认值?

最佳答案

试试这个:

ng-options="car as car.name for car in formData.cars.list"

它应该可以工作: plunk

您正在使用 ngOption 形式的 select as label for value in arrayDocumentation 说:



所以这意味着你希望你的 select 部分是一个对象,但是你提供了一个字符串 car.code

关于javascript - Angular 选择不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21161798/

10-13 01:52