angular.js - angular select如何获取选中的数据列
大家讲道理
大家讲道理 2017-05-15 17:11:43
0
2
538
<p>选项,{{selected}}</p>
<select ng-model="selected" ng-options="item.id as item.name for item in selectData">
        <option value="">-- 请选择 --</option>
</select>
$scope.selected = 1004;
$scope.selectData = [
    {id:1001,name:"零零一"},
    {id:1002,name:"零零二"},
    {id:1003,name:"零零三"},
    {id:1004,name:"零零四"}
];

如何获取选中的那一列数据。selected 只能获取到id值,但是我想要这一列的值。并且不干扰通过id值默认选中某一项。比如说我通过id:1004选中了这一项,我不单单要id值还要这一列的所有中。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
我想大声告诉你

你不觉得你的需求有矛盾吗,给ng-model赋值id值,又期望ng-model的值是对象?

如果想要最终ng-model是一列,但是你只能给出选中某项的id值(应该是你在页面编辑中遇到的),可以通过给定id先过滤出对应项,并赋值给selected。且ng-options表达式需要改成 item as item.name for item in selectData track by item.id

$scope.selectData = [
  {id:1001,name:"零零一"},
  {id:1002,name:"零零二"},
  {id:1003,name:"零零三"},
  {id:1004,name:"零零四"}
];
$scope.selected = $scope.selectData.filter(item => item.id === 1004)[0];
<select ng-model="selected" ng-options="item as item.name for item in selectData track by item.id">
    <option value="">-- 请选择 --</option>
</select>
过去多啦不再A梦

雷雷

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板