У меня есть следующие данные для моего контроллера.
$scope.groups={{"gpId": 3, "name" :"Tom"}, {"gpId": 32, "name" :"Helen"},{"gpId": 9, "name" :"Amy"}
$scope.user=
{
tkId: 32;
place: NW
}
В моем html у меня есть следующий select
<select ng-model="user.tkId" ng-options="a.gpId as a.name for a in groups track by a.gpId></select>
Когда я запускаю это, я получаю падение с выбранной Хеленой, но когда я хочу изменить выбор из раскрывающегося списка, это не позволяет мне. Пожалуйста, дайте мне знать, как я могу изменить его, чтобы выбрать другие параметры, чтобы сохранить их, если это необходимо. благодаря
Работает следующий фрагмент.
Во-первых, массив объектов записывается так [{}, {}]
Это написано в угловых документы, которые track by
с as
track by
и, as
не должны быть использованы вместе.
Не используйте
select as
иtrack by
в одном выражении. Они не предназначены для совместной работы.
<body ng-app="selectExample">
<script>
angular.module('selectExample', [])
.controller('ExampleController', ['$scope', function($scope) {
$scope.groups = [{
"gpId": 3,
"name": "Tom"
}, {
"gpId": 32,
"name": "Helen"
}, {
"gpId": 9,
"name": "Amy"
}];
$scope.user = {
tkId: 32,
place: 'NW'
};
}]);
</script>
<div ng-controller="ExampleController">
<label>Group:
<select ng-model="user.tkId" ng-options="group.gpId as group.name for group in groups"></select>
</label>
<br/> {{user.tkId}}
</div>
</body>