Как в angularjs поставить значение в selector?

VVit Smarty

Пытаюсь подразобраться с ангуляром. Никак не выходит в selector поставить значение из модели. Для текстовых данных, дат все нормально прокидывается. Для комбобокса значение значение тоже прокидывается, но в селекторе не выставляется, хотя если потом прочитать значение из селектора (если селектор не трогали) то оно читается нормальное которое поставили, а не пустое.

Выглядит все примерно так в js:

$scope.genderList = [
    { id: 0, name: 'Unknown' },
    { id: 1, name: 'Male' },
    { id: 2, name: 'Female' }
]

$scope.getGender = function(gender)
{
    return $scope.genderList[gender].name;
} 

$scope.Person = { Id: 10, Gender: 1 };

B html:

<select data-ng-model="Person.Gender">
   <option value="0">{{getGender(0)}}</option>
   <option value="1">{{getGender(1)}}</option>
   <option value="2">{{getGender(2)}}</option>
</select>
1 ответ

VVit Smarty

Для этого стоит использовать ng-repeat: <option ng-repeat="item in genderList" value="{{$index}}" ng-selected="item.name == 'Unknown'">{{item.name}}</option>

licensed under cc by-sa 3.0 with attribution.