Am phải đối mặt với vấn đề trong việc hiển thị giá trị được chọn trong danh sách thả xuống góc. nó hoạt động khi tôi đưa ra như thế nàyAngularJS thả xuống không hiển thị được lựa chọn giá trị
$scope.selectedItem = $scope.items[1];
không làm việc, nếu tôi đưa trực tiếp giá trị mà
$scope.selectedItem = { name: 'two', age: 27 };
HTML:
<html ng-app="app">
<body>
<div ng-controller="Test">
<select ng-model="selectedItem" ng-options="item.name for item in items">
</select>
</div>
</body>
</html>
JS:
var app = angular.module('app',[]);
app.controller('Test',function($scope){
$scope.items = [{name: 'one', age: 30 },{ name: 'two', age: 27 },{ name: 'three', age: 50 }];
$scope.selectedItem = $scope.items[1];
});
CODEPEN: http://codepen.io/anon/pen/zxXpmR
SOLUTION:
Cảm ơn bạn samir-das. Tôi cố định theo đề xuất của bạn.
var choosen_value = { name: 'two', age: 27 };
angular.forEach($scope.items, function(item){
if(angular.equals(choosen_value, item)){
$scope.selectedItem = item;
}
});
Bạn có cách nào để sửa lỗi này? –
Bạn sẽ phải sử dụng cùng một đối tượng. Trước tiên, bạn có thể tìm kiếm mục mà bạn muốn bắt đầu, sau đó chỉ định mục đó – Samir