我是AngularJS的新手,面临多个复选框的问题。我有一个注册表单,我可以从数据库中选择颜色。
$scope.ColorList = { { ID: 1,Name:"Red" },{ ID: 2,Name:"Green" },{ ID: 3,Name:"Blue" }};
我使用下面的代码来渲染表单中的复选框。
<tr>
<td>Favorite Colors</td>
<td>
<label data-ng-repeat="c in item.ColorList">
<input type="checkbox" value="{{c.ID}}" /><span>{{c.Name}}</span>
</label>
</td>
</tr>
现在,在添加操作期间,复选框正确呈现...但是如何将复选框与模型绑定以便我获得所选复选框的数组?
同样在编辑期间,我需要预选复选框以显示用户已保存的选项。
那么如何实现呢?
提前致谢。
答案 0 :(得分:0)
我认为大多数人会使用c
作为他们的模型,然后将ng-model
绑定到c
上的某个属性。那么您的列表实际上只是item.ColorList
$scope.ColorList = [ { ID: 1,Name:"Red" },{ ID: 2,Name:"Green" },{ ID: 3,Name:"Blue" }];
<label data-ng-repeat="c in item.ColorList">
<input type="checkbox" ng-model="c.Active" value="{{c.ID}}" /><span>{{c.Name}}</span>
</label>
$scope.getSelected = function(item){
var results = [];
angular.forEach(item.ColorList, function(c){
if(c.Active){
results.push(c);
}
});
return results;
}