2017-10-12 87 views
0

我有$scope对象的数组,其中一个对象有{Id, Name}键。在正面,我生成select元素的形式,其中options应该是对象的名称,绑定值应该是这些对象的id。我想select元素ng-model placeholderId有item.Id 的价值是什么我想的是:Angular-ng-repeat item.Id作为Item.Name在项目

<select 
    name="sequence" 
    ng-model="placeholderId" 
    required> 
<option ng-repeat="item.Id as item.Name in items">{{item.Name}}</option> 

,但得到的错误:

Error: [ngRepeat:iidexp] 'item' in 'item in collection' should be an identifier or '(key, value)' expression, but got

回答

0

你可以做这样的事情。

<select name="sequence" ng-options="item as item.Name for item in items" ng-model="selectedItem">

现在模式 “则selectedItem” 是对象。要获得“Id”的价值,你需要在控制器中这样做。

$ scope.selectedItem.Id

1

你要寻找的是ng-value。重写选项标签看起来像这样:

<option ng-repeat="item in items" ng-value="item.Id" >{{item.Name}}</option> 
+0

正是我想要的。谢谢。还有一个问题。如果我编辑含有select元素的表单,如何自动绑定item.Id或Item.Name选项以编辑对象? – basic

相关问题