gpt4 book ai didi

javascript - 选择AngularJS中的所有复选框

转载 作者:行者123 更新时间:2023-11-28 19:10:38 24 4
gpt4 key购买 nike

我是 AngularJS 新人。我正在尝试选择带有单个复选框的所有复选框,并执行 checkboxClick 方法。因为我们将值设置为范围。如何做到这一点?

<input class="check-box" data-val="true" type="checkbox">Select All </input>
<table class="table table-bordered">
<tr>
<th></th>
<th>Printed</th>
<th>First Name</th>
<th>Last Name</th>
<th>Company</th>
<th>City</th>
<th>Country</th>
</tr>
<tr ng-repeat="item in items">
<td>
<input class="check-box" data-val="true" type="checkbox" ng-model="item.selected" ng-click="checkboxClick($event, item)">
</td>
<td>
{{item.printed}}
</td>
....
....
</tr>
</table>

JS

 $scope.checkboxClick = function (eventobj, item) {
if (eventobj.target.checked) {
$scope.selectedItems.push(item);
$scope.getLabel(item.id);
$scope.getOrderItems(item.id);
$scope.getPaymentItems(item.id);
} else {
$scope.removeItemFromSelection(item);
};
};

最佳答案

您想要一个通过复选框上的 ng-click 事件启动的函数。这也将取消选择所有复选框。它迭代所有项目,更改每个项目的状态。

   <input type="checkbox" ng-model="selectAll" ng-click="checkAll()" />
<tr ng-repeat="item in items">
<td>
{{item.name}}
</td>
<td>
<input type="checkbox" ng-model="item.Selected" />
</td>
</tr>

Controller 可能看起来像这样:

angular.module("myApp", [])
.controller("checkboxCtrl", function($scope) {

$scope.Items = [{
name: "one"
}, {
name: "two"
}, {
name: "three"
}];

$scope.checkAll = function () {
angular.forEach($scope.Items, function (item) {
item.Selected = $scope.selectAll;
});
};
});

关于javascript - 选择AngularJS中的所有复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30767513/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com