当你有一个空数组作为checked.bind时,可以通过以下步骤来创建全选复选框:
<input type="checkbox" ng-model="selectAll">
$scope.checkedItems = [];
<input type="checkbox" ng-model="selectAll" ng-change="toggleSelectAll()">
$scope.toggleSelectAll = function() {
if ($scope.selectAll) {
// 全选复选框被选中时,将所有复选框的值添加到checkedItems数组中
angular.forEach($scope.items, function(item) {
$scope.checkedItems.push(item);
});
} else {
// 全选复选框取消选中时,清空checkedItems数组
$scope.checkedItems = [];
}
};
<input type="checkbox" ng-model="item.checked" ng-change="toggleItem(item)">
$scope.toggleItem = function(item) {
if (item.checked) {
// 复选框被选中时,将其值添加到checkedItems数组中
$scope.checkedItems.push(item);
} else {
// 复选框取消选中时,从checkedItems数组中移除其值
var index = $scope.checkedItems.indexOf(item);
if (index !== -1) {
$scope.checkedItems.splice(index, 1);
}
}
};
通过以上步骤,你可以创建一个全选复选框,并且当全选复选框被选中或取消选中时,所有复选框的选中状态会相应地更新,并且选中的复选框的值会存储在checkedItems数组中。
领取专属 10元无门槛券
手把手带您无忧上云