この例は非常に単純に思えますが、なぜ機能しないのか理解できないようです (これを取得したら使用したいプラグインである select2 では機能しないため、ng-options は使用したくありません)。考え出した):
HTML:
<div ng-app="myApp">
<div ng-controller="MyCtrl">
selectedNumber: {{selectedNumber}}
<select ng-model="selectedNumber">
<option ng-repeat="number in numbers" value="{{number}}">{{number}}</option>
</select>
<div ng-repeat="number in numbers">
{{number}}
</div>
</div>
</div>
AngularJS:
var app = angular.module('myApp', []);
app.controller('MyCtrl', function($scope) {
$scope.numbers = [1, 2];
$scope.selectedNumber = 2;
});
要素を検査すると、次のようになります。
<select ng-model="selectedNumber" class="ng-pristine ng-valid">
<option value="? number:2 ?"></option>
<!-- ngRepeat: number in numbers -->
<option ng-repeat="number in numbers" value="1" class="ng-scope ng-binding">1</option>
<option ng-repeat="number in numbers" value="2" class="ng-scope ng-binding">2</option>
</select>
余分な " " がこの問題を引き起こしていると推測して<option value="? number:2 ?"></option>
いますが、それを取り除く方法がわかりません。また、これのjsfiddleを実際に作成しました。