我目前有复选框,用户可以选择,然后发送到我的模型,
<div ng-repeat="option in roleOptions">
<input type="checkbox" value="{{option.Id}}" ng-model="user.Roles[option.Id]">{{option.Name}}
</div>
问题是这会产生这样的结果,
{
0: 'a',
1: 'b',
2: 'c'
}
虽然我想要这样的输出,
['a','b','c']
我意识到我之后可以转换它们,但是我真的想以某种方式更改我的html以便它直接映射到数组,因为我也会将这些数据以数组格式发送到html所以我不想一直保持转换。
有什么想法吗?
答案 0 :(得分:1)
ng-model 仅对某个对象起作用。您正在尝试将值推送到数组上。您可能最好使用ng-click并创建自己的处理程序来从阵列推送/移位。
<div ng-repeat="option in roleOptions">
<input type="checkbox" value="{{option.Id}}" ng-click="addToArray(user.Roles, option.Id)">{{option.Name}}
</div>