select ng-options 通过id拿到name 请各位大神帮忙解决

  <select class="label-select" ng-model="interest" ng-options="interest.id as interest.name for interest in interestes" ng-change="reloadData()"></select>

controller里面这样写的

$scope.interestes=[{
        id:'0',
        name:'通用兴趣'
    },{
        id:'1',
        name:'通用兴趣1'
    },{
        id:'2',
        name:'通用兴趣2'
    },{
        id:'3',
        name:'通用兴趣3'
    },{
        id:'4',
        name:'通用兴趣4'
    },{
        id:'5',
        name:'通用兴趣5'
    }]
    
    $scope.interest=$scope.interestes[0].id;
    我想通过id把name拿到
阅读 3.4k
3 个回答

直接写

ng-options="interest as interest.name for interest in interestes"

然后用 $scope.interest.name 去获取name不就是了

当数据源为数组时,ngOptions有以下传参方式。

label for value in array
select as label for value in array
label group by group for value in array
select as label group by group for value in array track by trackexpr

其中select表示ngModel最后绑定的值,label则是表示选择在选择时显示的值。
话说根据id获取name不是直接可以在controller里面就能完成么。为什么要写个select。

jQuery.grep
楼主想要通过ID在interestes获取name属性,除了迭代没有其它办法,上面是jQuery提供的工具函数,非常好用。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题