我如何从$ scope.item获得第三列值

时间:2017-12-30 07:29:43

标签: angularjs

我如何根据选择

$scope.item获得第三列值
$scope.items = [{name: 'one', age: 30, xxx: '15' },{ name: 'two', age: 27,xxx: '12' },{ name: 'three', age: 50,xxx: '16' }];


<p>selected item is : {{selectedItem.xxx}}</p>

<select ng-model="selectedItem" ng-change="selectAction()">
   <option ng-repeat="item in items" value="{{item.age}}">{{item.name}}</option>

3 个答案:

答案 0 :(得分:0)

只需使用索引

访问第三个元素
 <p>selected item is : {{items[2].xxx}}</p>

答案 1 :(得分:0)

您已将selectedItem定义为下拉列表的模型,并且每个option的值都设置为item.age。因此,对于当前选择,$scope.selectedItem将代表age而不是xxx

如果您想选择xxx,请将option的值更改为xxx

<option ng-repeat="item in items" value="{{item.xxx}}">{{item.name}}</option>

现在,当您在下拉列表中选择一个选项时,$scope.selectedItem将代表相应项目中xxx的值。

答案 2 :(得分:0)

最简单的选择是使用ng-value将整个项目对象指定为值。

<p>selected item is : {{selectedItem.xxx}}</p>

<select ng-model="selectedItem" ng-change="selectAction()">
  <option ng-repeat="item in items" ng-value="{{item}}">{{item.name}}</option>
</select>

此处的示例:https://plnkr.co/edit/e7j8jkVrVNAo3Ar9sc2q?p=preview