[英]Render specific element in input from a list - AngularJS
我正在渲染选择选项,如下所示:
<select ng-model="curUserId" ng-options="u.id as u.name for u in users"></select>
在控制器代码中:
$scope.users = [{"id":1, "name":"abc"}, {"id":2, "name":"def"}, ...]
$scope.curUserId = 2; //Selected User
这将加载具有用户def
选择框,作为ng-model拥有curUserId
值的选定用户。
我需要在输入框中显示相同的内容,其中一种方法是将范围变量分配给输入框,然后在控制器中遍历用户列表并获取选定的用户。
即
for(var i=0;i<$scope.users.length){
if($scope.users[i] == $scope.curUserId)
{
$scope.selUser = $scope.users[i].name;
break;
}
}
还有什么其他方法可以让我在AngularJS中获得selUser而不是遍历列表。
谢谢!
您可以绑定到模型而不是ID:
<select ng-model="curUser" ng-options="u as u.name for u in users track by u.id"></select>
在控制器代码中:
$scope.users = [{"id":1, "name":"abc"}, {"id":2, "name":"def"}, ...]
// coming from server
$scope.curUser = {"id":2, "name":"def"}; //Selected User
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.