2013-11-23 138 views
2

我有一个数组包含星期几。它看起来像这样:获取角度复选框

$scope.days=[{id:0, day: 'Monday'},{id:1, day: 'Tuesday'},{id:2, day: 'Wednesday'},{id:3, day: 'Thursday'}, {id:4, day: 'Friday'}, {id:5, day:'Saturday'}, {id:6, day:'Sunday'}]; 

,并含有天字符串用户,他/她可以:

$scope.user={"userdays":"1011111"};; 

1 =可用,0 =不可用。

我把它绑定到这样一个复选框列表:

<p ng-repeat="day in days"> 
    <input ng-model="userdays[day.id]" ng-checked="user.userdays[day.id]!=0" type="checkbox" /> 
{{day.day}}</p> 

创造的天阵复选框列表和检查的日子里,用户是可用的。

每当发生变化时,我一天增加一个属性:

$scope.userdays={}; 

然后,我会想保存天用户是可用的。但是除非我做出改变(即点击其中一个复选框),$ scope.userdays-property不包含任何内容,它只包含我已与之交互的复选框的值。

我的问题是,无论我是否实际点击了其中一个复选框,我如何获取所有选中的复选框的值?

我已经创建了一个plunker这里,显示我的当前实现: http://plnkr.co/edit/Yrr2wrcoUno6tzgBgOMa?p=preview

感谢

托马斯

回答

1

你可以使用一个for循环设置初始状态

检查更新plunker

+0

优秀。谢谢 – ThomasD