以下是我尝试在按钮click
上创建(可用)的数组类型 -
[
{DATE, morning_VALUE, night_VALUE},
{DATE, morning_VALUE, night_VALUE},
{DATE, morning_VALUE, night_VALUE},
{DATE, morning_VALUE, night_VALUE},
{DATE, morning_VALUE, night_VALUE},
{DATE, morning_VALUE, night_VALUE},
{DATE, morning_VALUE, night_VALUE},
]
morning_VALUE -> true/false
night_VALUE -> true/false
以下是我的plnkr代码 - PLNKR
HTML -
<div class="col-lg-3">
<ul>
<li ng-repeat="a in weeklist" style="margin-bottom: 3px;">
<button ng-click="showWeekDays(a[0], a[1])"
style="width:178px;"
class="btn bg-blue">
{{a[0] | date: 'shortDate'}} - {{a[1] | date: 'shortDate'}}
</button>
</li>
</ul>
</div>
<table>
<tr ng-repeat-start="a in sevenWeekDayArr">
<td>
{{a | date: 'shortDate'}}
</td>
<td>
<input type="hidden"
ng-model="avail[$index].currDate"
ng-init="avail[$index].currDate = a" />
</td>
</tr>
<tr>
<td>Morning:</td>
<td>
<input type="checkbox" ng-model="avail[$index].morning" />
</td>
</tr>
<tr ng-repeat-end="">
<td>Night:</td>
<td>
<input type="checkbox" ng-model="avail[$index].night" />
</td>
</tr>
</table>
<div>
<button ng-click="addTime(avail)">Click</button>
</div>
让我知道我在这里做错了什么,我相信我需要在案例中使用push
,但不知道如何在我的场景中使用它。
答案 0 :(得分:3)
您尝试将对象绑定到没有特定值的模型对象。
在script.js
的第17行之后尝试此操作$scope.avail.push({currDate: "", morning:false, night:false});
这将初始化该对象数组,然后您可以按照您希望的方式对其进行修改
答案 1 :(得分:0)
<table>
<tr ng-repeat-start="a in sevenWeekDayArr">
<td>
{{a | date: 'shortDate'}}
</td>
<td>
<input type="hidden" ng-model="a.currDate" />
</td>
</tr>
<tr>
<td>Morning:</td>
<td><input type="checkbox" ng-model="a.morning" /></td>
</tr>
<tr ng-repeat-end="">
<td>Night:</td>
<td><input type="checkbox" ng-model="a.night" /></td>
</tr>
</table>
<div>
<button ng-click="addTime()">Click</button>
</div>
$scope.addTime = function(){
angular.forEach($scope.sevenWeekDayArr, function(item){
$scope.avail.push(item);
});
console.log($scope.avail);
};