2014-11-03 2 views
1

У меня есть мой угловой вид, в котором я должен заполнить поле выбора со значением, сохраненным в базе данных, и разрешить выбор других параметров. Я пробовал вот так:select - populate при редактировании сообщения

<div class="form-group"> 
<label class="control-label" for="status">Status zaposlenika</label> 
<div class="controls"> 
<select required name="status" class="form-control" ng-model="employee.status" ng-options="statusType.name for statusType in statusTypes" > 
</select> 
</div> 

Но мое значение не заполнено на мой взгляд. ({{employee.status}} -> "test")

Как это сделать?

EDIT

Моя модель employee.status заполняется значением "тест". Но мой выбор - нет. Значения Othe перечислены как элементы для выбора. Как я могу установить значение по умолчанию, которое сохраняется в моей базе данных, чтобы быть предварительно выбранным в моем поле выбора.

+0

Вы не имеете значение 'test' в вас' statusTypes', так не может быть выбрано. – dfsq

+0

Модель employee.status заполнена данными, которые извлекаются из db с помощью службы и $ resorce – Sysrq147

+0

Ой, извините, значение есть у меня плохо. Но это не работает. – Sysrq147

ответ

1

Ваша модель employee.name является строкой, а selectbox привязан к объекту, подобному {name: "Test1"}. Поэтому, если вы хотите выбрать опцию из statusTypes, вам нужно найти соответствующий объект в массиве объекта.

$scope.statusTypes = [ 
    {name: 'Test1'}, 
    {name: 'Test2'}, 
    {name: 'Test3'} 
]; 

var selectedStatus = $scope.statusTypes.filter(function(type) { 
    return type.name = 'Test2'; 
})[0]; 

$scope.employee = { 
    status: selectedStatus 
}; 

Таким образом, вы должны сделать employee.status быть один из объектов из statusTypes массива.

Или другой вариант, чтобы продолжать использовать строку для employee.status и изменить ngOptions привязку к строке вместо объекта:

ng-options="statusType.name as statusType.name for statusType in statusTypes" 
+0

Спасибо, что открыли мои глупые глаза :) – Sysrq147

+1

Нет проблем, ngOptions - это сложная директива, я знаю .. – dfsq

+0

Одна очень странная вещь, когда я перестраиваю свои ценности, иногда она работает когда-нибудь это не будет работать :(Некоторое значение привязано к этой строке, иногда это не так. Я использую опцию secound. – Sysrq147

Смежные вопросы