我想选择一个对象数组。example但不知何故,我无法访问所选对象的属性。
JS ---
$scope.test1={};
$scope.test = [{'name':'test1'},{'name':'test2'},{'name':'test3'}];
HTML -
<select style="width:100px;height:25px;" ng-model="test1">
<option ng-repeat="attribute in test" value="{{attribute}}">{{attribute['name']}}</option>
</select>
{{test1}}
{{test1.name}}
这里,test1.name为空白。
答案 0 :(得分:4)
以这种方式使用ngOpions。它提供适当的控制权,而不是ng-repeat
<select style="width:100px;height:25px;" ng-model="test1"
ng-options="attribute.name for attribute in test">
以下是Plunker
答案 1 :(得分:1)
这是因为select
value
被解释为字符串。不是对象。当然字符串没有name
属性。如果希望值包含整个对象,可以使用ng-options
。 Read the documentation here.