开始使用Angular并使用选择下拉列表真的让我感到困惑。基本上我使用AJAX调用获取JSON对象,然后使用AngularJS使用JSON填充我的表单。
对于下拉列表,来自数据库的settings.metric ='2'。所以选中的是“cm”。
我的问题是,如何获取当前选择的选项及其数据值?我尝试了scope.settings.metric但是所有给我的是“2”。我想获得所选的其他属性,例如名称和数据值。
$scope.metrics = [
{id:1,name:'in',value:'1',datavalue:'in'},
{id:2,name:'cm',value:'2',datavalue:'cm'},
{id:3,name:'px',value:'3',datavalue:'px'},
{id:4,name:'pt',value:'4',datavalue:'pt'}
];
<select
ng-model="settings.metric" // this is 2 from database call
ng-options="p.value as p.name for p in metrics" >
</select>
答案 0 :(得分:5)
这与您已有的相当简单。你必须写这个。
ng-options="p as p.name for p in metrics"
第一个参数'p'是将要存储的值 第二个参数'p.name'是选项中显示的值。
希望有助于brotha。