Reputation: 78
In my controller, I have:
$scope.sizes = {
things: [
'one',
'two'
]
}
and in my HTML, I have
<select ng-options="thing for thing in sizes.things"></select>
The resulting combobox has no values. However, in this case:
$scope.things = ['one', 'two'];
<select ng-options="thing for thing in things"></select>
The resulting combobox shows "one", "two" as its options. Can someone explain why I can't access the array within a $scope object?
Upvotes: 0
Views: 687
Reputation: 49714
You were missing the ng-model
attribute on your ng-options select element.
Adding ng-model="thing"
gets it working...
<select ng-model="thing" ng-options="thing for thing in sizes.things"></select>
You can see a working example here.
PS It was actually not working for either the array or the object. Adding the ng-model
attribute gets both working.
Upvotes: 2