ngOptions binding
ngModel binds to reference instead of value. Model must refer to element of ngOptions binding array, not another object with same value
by gonglei
HTML
<div ng-app="myApp">
<div ng-controller="myCtrl">
<div ng-repeat="(id,text) in notes">{{text}}</div>
<select ng-model="model.obj" ng-options="note as note.text for note in notes" ></select>
{{model.obj}}
</div>
</div>
JavaScript
angular.module('myApp',[])
.controller('myCtrl',function($scope,$timeout){
$scope.notes=[{id:"id1", text:"text1"}, {id:"id2", text:"text2"}, {id:"id3", text:"text3"}];
$scope.model={obj:{id:'id2', text: "text2"}}
//$scope.model = {obj: $scope.notes[1]};
});