我有一个用户列表(对象数组)
$scope.owner
中的所选用户才能在其他地方使用。Id
预先选择用户,并使用正确的对象值进行$scope.owner
更新(例如user.Email,user.Address)。$scope.item.UserId
需要根据所选用户进行更改。这是我到目前为止所做的:
<select
ng-model="owner"
ng-change="item.UserId=owner.Id"
ng-options="user as user.Company + ' - ' + user.FirstName + ' ' + user.LastName for user in users track by user.Id">
</select>
目前 1。和 3。工作,但当我预先选择使用时:
$scope.owner = { Id: 1 };
然后我显然没有users
的所有值,例如user.Email
。
有人有想法或建议吗?
谢谢,Lex
答案 0 :(得分:1)
如果你使用$ scope.owner = {Id:1},即使它具有相同的Id,它也是不同的实例,然后在ng-options中迭代时创建一个。
当您获得用户列表时,为什么不设置
$scope.owner = $scope.users[0]
// or if you need to get by id just use
$scope.owner = $scope.users.filter(...)[0]
这是样本plunker。 http://plnkr.co/edit/5VZbdmBmtaDpkeLYQwft?p=preview