在对象中声明的数组上使用 ng-options
Using ng-options on array declared in an object
在我的控制器中,我有:
$scope.sizes = {
things: [
'one',
'two'
]
}
在我的 HTML 中,我有
<select ng-options="thing for thing in sizes.things"></select>
生成的组合框没有值。但是,在这种情况下:
$scope.things = ['one', 'two'];
<select ng-options="thing for thing in things"></select>
生成的组合框显示 "one"、"two" 作为其选项。有人可以解释为什么我不能访问 $scope 对象中的数组吗?
您的 ng-options select 元素缺少 ng-model
属性。
添加 ng-model="thing"
使其正常工作...
<select ng-model="thing" ng-options="thing for thing in sizes.things"></select>
您可以看到一个工作示例 here。
PS 它实际上对数组或对象都不起作用。添加 ng-model
属性使两者都起作用。
在我的控制器中,我有:
$scope.sizes = {
things: [
'one',
'two'
]
}
在我的 HTML 中,我有
<select ng-options="thing for thing in sizes.things"></select>
生成的组合框没有值。但是,在这种情况下:
$scope.things = ['one', 'two'];
<select ng-options="thing for thing in things"></select>
生成的组合框显示 "one"、"two" 作为其选项。有人可以解释为什么我不能访问 $scope 对象中的数组吗?
您的 ng-options select 元素缺少 ng-model
属性。
添加 ng-model="thing"
使其正常工作...
<select ng-model="thing" ng-options="thing for thing in sizes.things"></select>
您可以看到一个工作示例 here。
PS 它实际上对数组或对象都不起作用。添加 ng-model
属性使两者都起作用。