2015-10-17 148 views
1

这很简单,我知道,但只是缠着我,我得到了下面的代码AngularJS改变选择选项NG单击

<label>Role</label><div> 
<select ng-change="save()" ng-model="frm.TypeID"> 
    <option ng-value="">Select Role</option> 
    <option ng-value="1" value="1">Admin</option> 
    <option ng-value="3" value="3">User</option> 
    <option ng-value="2" value="2">Guest</option> 
</select> 

我从数据库中获取的NG-值,但通过控制器不能更新怎么这么我可以这样做

angular.controller('testCtrl',['$scope', function($scope){ 
$scope.select=function(){ 
    $scope.frm.TypeID = 3; 
} 
}]); 

感谢

+0

目前尚不清楚你需要做什么,并且什么实际代码的问题... –

回答

2

使用ng-options

模板

<select ng-model="frm.TypeID" ng-options="role.id as role.label for role in roles"> 
    <option ng-value="">Select Role</option> 
</select> 

控制器

$scope.roles = [ 
    {id: 1, label: 'Admin'}, 
    {id: 2, label: 'User'}, 
    {id: 3, label: 'Guest'} 
]; 

$scope.frm = { 
    TypeID: 3 
}; 

// fetch value from database then update value 
fetchData().then(function (id) { 
    $scope.frm.TypeID = id; 
} 

fiddle

+0

那Micheal非常有帮助谢谢 – user3052526

+0

很高兴帮助! –