Я использую поле выбора с директивой chosen. На моей странице пользователь может редактировать объект. Форма в bootstrap modal открывается с начальными значениями, которые пользователь может редактировать. Все входные формы требуются.Выбор не всегда соответствует исходной величине модели в AngularJS
В других моих блоках выбора у всех вариантов есть идентификаторы, которые правильно соответствуют идентификатору изначально установленного значения. Но в одной коробке есть только три варианта: все это только строки. Я не уверен, где проблема, но поле выбора соответствует только модели в 1 раз в 5 раз. Я пробовал решения в других подобных вопросах, но никто из них не работал. Я попытался создать пример в jsfiddle, но я не смог дублировать проблему там.
Пример HMTL:
<div class="modal-body">
<form class="form-horizontal" name="editForm" novalidate>
<div class="form-group" ng-class="{'has-error': editForm.inputType.$invalid}">
<label for="inputType" class="col-sm-2 control-label">Type:</label>
<select chosen
class="col-sm-7"
id="inputType"
name="inputType"
data-ng-model="formData.Type"
data-ng-options="type.Name as type.Name for type in typeList"
required>
<option value="">Select a type</option>
</select>
</div>
</form>
</div>
Функция контроллера, который загружает данные для редактирования:
$scope.edit = function(objectid) {
var req = {
method: 'GET',
url: $scope.url + 'node/' + objectid + '/'
}
$http(req).success(function(response) {
$scope.formData = response;
$scope.formData.id = objectid;
});
};
И TypeList структурирована:
$scope.typeList = [
{"Name": "General"},
{"Name": "Super"},
{"Name": "Material"}
];
Я ve испытал formData.Type === typeList[0].Name
, когда тип General, и он возвращает true
. Может ли проблема быть с выбранной директивой или загрузочным модальным?