选中AngularJS中的所有复选框

选中AngularJS中的所有复选框,angularjs,checkbox,Angularjs,Checkbox,我是新来安格拉斯的。请注意: 现在,当用户单击所有链接时,应选中所有11个复选框,当用户单击无链接时,应取消选中所有11个复选框 另外,当用户选中所有其他复选框时,应选中所有底部9个复选框,当用户取消选中所有其他复选框时,应取消选中所有底部9个复选框 我可以一次完成一项任务,但不能同时完成。 那么,有人能帮我同时完成这两项任务吗 任何帮助都将不胜感激 您可以使用 HTML 请参阅您可以使用的 HTML 请参阅您可以使用ng Checked 它让你更容易 请参阅您可以使用ng Checked 它让

我是新来安格拉斯的。请注意:

现在,当用户单击所有链接时,应选中所有11个复选框,当用户单击无链接时,应取消选中所有11个复选框

另外,当用户选中所有其他复选框时,应选中所有底部9个复选框,当用户取消选中所有其他复选框时,应取消选中所有底部9个复选框

我可以一次完成一项任务,但不能同时完成。 那么,有人能帮我同时完成这两项任务吗

任何帮助都将不胜感激

您可以使用

HTML

请参阅您可以使用的

HTML

请参阅您可以使用ng Checked 它让你更容易

请参阅您可以使用ng Checked 它让你更容易

请参阅

Html

 <button ng-click="selectAll()"> all</button>
 <div ng-repeat="item in items">
    <input type="checkbox" ng-model="selected[item.id]">
  </div>
JQuery

$scope.selected = {};
$scope.selectAll= function(){
    for (var i = 0; i < $scope.items.length; i++) {
    var item = $scope.items[i];
    $scope.selected[item.id] = true;
    }
 };
Html

JQuery

$scope.selected = {};
$scope.selectAll= function(){
    for (var i = 0; i < $scope.items.length; i++) {
    var item = $scope.items[i];
    $scope.selected[item.id] = true;
    }
 };


如果有人能给我一个Pucker或JSFIDLE演示,那就太好了,它具有我的确切功能,即检查复选框的两种方法。如果你能分享你实现它的尝试,那就更好了!这里有9个复选框。另外两个复选框在哪里?另外,请发送您的代码…如果有人能给我Pucker或JSFIDLE演示,这将是很好的,它与我的确切功能,即两种方法来检查checkbox如果你能分享你的尝试,实现它会更好!这里有9个复选框。另外两个复选框在哪里?也请发送您的代码…非常感谢您的回答和代码的详细解释。现在唯一的问题是,我的复选框在一个手风琴内,这使得您的解决方案存在问题。你知道怎么解决吗?Sahil Gupta,你更新的小提琴中有一个问题:首先选中“全部清除”按钮旁边的主复选框,然后取消选中底部复选框行中的任何2-3个复选框,现在单击“全部选择”,它不会选中你刚刚取消选中的复选框。知道如何解决吗?@ParthVora:是的,这是一个问题,因为根据angular doc,ng checked指令不应与ngModel一起使用。这是因为ng checked需要一个表达式,所以说ng checked=true就是说默认情况下复选框总是被选中的。我误解了这一点。删除更新的答案。同样抱歉。最好的方法是使用第一个解决方案。非常感谢您的回答和代码的详细解释。现在唯一的问题是,我的复选框在一个手风琴内,这使得您的解决方案存在问题。你知道怎么解决吗?Sahil Gupta,你更新的小提琴中有一个问题:首先选中“全部清除”按钮旁边的主复选框,然后取消选中底部复选框行中的任何2-3个复选框,现在单击“全部选择”,它不会选中你刚刚取消选中的复选框。知道如何解决吗?@ParthVora:是的,这是一个问题,因为根据angular doc,ng checked指令不应与ngModel一起使用。这是因为ng checked需要一个表达式,所以说ng checked=true就是说默认情况下复选框总是被选中的。我误解了这一点。删除更新的答案。同样抱歉。最好的方法是使用第一个解决方案。ng-checked只是设置一个布尔值,而不是设置ng模型的值。ng-checked只是设置一个布尔值,而不是设置ng模型的值。欢迎使用StackOverflow。虽然这段代码可以解决这个问题,但如何以及为什么解决这个问题将真正有助于提高您的帖子质量,并可能导致更多的投票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。欢迎使用StackOverflow。虽然这段代码可以解决这个问题,但如何以及为什么解决这个问题将真正有助于提高您的帖子质量,并可能导致更多的投票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。
$scope.selected = {};
$scope.selectAll= function(){
    for (var i = 0; i < $scope.items.length; i++) {
    var item = $scope.items[i];
    $scope.selected[item.id] = true;
    }
 };
<md-checkbox ng-click="checked = !checked; check = {}"></md-checkbox>
<div ng-repeat="item in [1,2,3,4,5]">
    <md-checkbox ng-checked="checked || check[item]" ng-click="check[item] = !check[item]" ng-model="sel[item]"></md-checkbox>
</div>