我的编辑表单上有几个选择框,现在当页面加载数据加载到其中时,这适用于所有文本框和复选框但不适用于选择框,我无法为它们设置所选值我已用Google搜索了这么多事情,但我似乎仍然无法找到我做错了什么,这是我的HTML:
<div class="form-group" ng-init="getRoles()">
<label for="roles">Role</label>
<select style="width: 100%;" data-toggle="select2" ng-model="form.role_id" ng-options="item.id as item.role for item in roles">
</select>
</div>
这是在我的控制器中获取和设置用户信息的功能:
$scope.getUserInfo = function() {
UserService.get($stateParams.id)
.success(function (data, status, headers, config) {
if (data.user != undefined)
{
$scope.form = data.user;
}
})
};
这是在我的控制器中获取和设置角色的函数:
$scope.getRoles = function() {
RoleService.get()
.success(function (data, status, headers, config) {
if (data.roles != undefined)
{
$scope.roles = data.roles;
}
})
};
我已经验证了返回的数据,这确实是正确的。 这是返回的JSON:
{"user":{"id":2,"email":"xxxxxxx@gmail.com","role_id":2,"institution_id":null,"is_active":1}}
这是返回的角色JSON:
{"roles":[{"id":2,"role":"System"},{"id":3,"role":"Administrator"},{"id":4,"role":"Instructor"}]}
答案 0 :(得分:0)
你需要写
ng-model="user.role_id"