Javascript 单击“角度”按钮时选择多个复选框
我的HTML代码中有一个表,其中的行由AngularJS ng repeat生成。每行在第一列中包含一个复选框和其他数据 在相应的列中。单击另一个div中的此按钮时,我试图将所有复选框标记为选中Javascript 单击“角度”按钮时选择多个复选框,javascript,html,angularjs,angularjs-ng-repeat,Javascript,Html,Angularjs,Angularjs Ng Repeat,我的HTML代码中有一个表,其中的行由AngularJS ng repeat生成。每行在第一列中包含一个复选框和其他数据 在相应的列中。单击另一个div中的此按钮时,我试图将所有复选框标记为选中 {{row.data1}} {{row.data2}} 使用指令ng checked <tbody> <tr ng-repeat="row in myObject track by $index" ng-class-even="'alternate-row'">
{{row.data1}}
{{row.data2}}
使用指令ng checked
<tbody>
<tr ng-repeat="row in myObject track by $index" ng-class-even="'alternate-row'">
<td name="checkbox">
<input type="checkbox" ng-checked="checkAll" ng-model="row.checked" ng-style="row.checkboxStyle" ng-click="setSelectedRow(row)" />
</td>
<td>{{ row.data1 }}</td>
<td>{{ row.data2 }}</td>
</tr>
</tbody>
使用指令
ng checked
<tbody>
<tr ng-repeat="row in myObject track by $index" ng-class-even="'alternate-row'">
<td name="checkbox">
<input type="checkbox" ng-checked="checkAll" ng-model="row.checked" ng-style="row.checkboxStyle" ng-click="setSelectedRow(row)" />
</td>
<td>{{ row.data1 }}</td>
<td>{{ row.data2 }}</td>
</tr>
</tbody>
您可以这样做:
<table>
<tbody>
<tr ng-repeat="row in myObject track by $index" ng-class-even="'alternate-row'">
<td name="checkbox">
<input type="checkbox" ng-model="row.checked" ng-style="row.checkboxStyle" />{{row.checked}}
</td>
<td>{{ row.data }}</td>
</tr>
</tbody>
</table>
<div class="btn-group">
<button type="button" id="selectAll" class="btn btn-default" title="Select All" ng-click="selectAllGrid()">Select All</button>
</div>
{{row.checked}
{{row.data}}
全选
在控制器中:
app.controller('MainCtrl', function($scope) {
$scope.allchecked = false;
$scope.selectAllGrid = function(){
console.log($scope.allchecked);
$scope.allchecked = !$scope.allchecked
for(var i =0; i<$scope.myObject.length; i++) {
$scope.myObject[i].checked = $scope.allchecked ;
}
}
$scope.myObject = [
{"data": "sdfsdf"},
{"data": "asdfassafs"},
{"data": "asesfrsaedfsadfsadsd"}
]
});
app.controller('MainCtrl',函数($scope){
$scope.allchecked=false;
$scope.selectAllGrid=function(){
log($scope.allchecked);
$scope.allchecked=!$scope.allchecked
对于(var i=0;i您可以这样做:
<table>
<tbody>
<tr ng-repeat="row in myObject track by $index" ng-class-even="'alternate-row'">
<td name="checkbox">
<input type="checkbox" ng-model="row.checked" ng-style="row.checkboxStyle" />{{row.checked}}
</td>
<td>{{ row.data }}</td>
</tr>
</tbody>
</table>
<div class="btn-group">
<button type="button" id="selectAll" class="btn btn-default" title="Select All" ng-click="selectAllGrid()">Select All</button>
</div>
{{row.checked}
{{row.data}}
全选
在控制器中:
app.controller('MainCtrl', function($scope) {
$scope.allchecked = false;
$scope.selectAllGrid = function(){
console.log($scope.allchecked);
$scope.allchecked = !$scope.allchecked
for(var i =0; i<$scope.myObject.length; i++) {
$scope.myObject[i].checked = $scope.allchecked ;
}
}
$scope.myObject = [
{"data": "sdfsdf"},
{"data": "asdfassafs"},
{"data": "asesfrsaedfsadfsadsd"}
]
});
app.controller('MainCtrl',函数($scope){
$scope.allchecked=false;
$scope.selectAllGrid=function(){
log($scope.allchecked);
$scope.allchecked=!$scope.allchecked
对于(var i=0;iit起作用。谢谢mate。但是我单击复选框时执行的操作没有发生。。另外,在我手动单击复选框后,按钮停止工作,不再选择任何进一步的操作。它起作用了。谢谢mate。但是我单击复选框时执行的操作没有发生。。也是在我单击复选框之后手动x按钮停止工作,不再选择任何进一步的选项。谢谢。这是一个很好的答案。但是如何调用在我实际将复选框标记为选中时调用的函数/事件。不理解。你能详细解释一下吗。当我手动单击复选框以选中/取消选中它时,会触发一个事件,并且我在JS中调用一个方法来在事件中。我用复选框所在行的值填充一个数组。现在,当我用按钮选中/取消选中复选框时,该方法不会在复选框选中/取消选中时触发。确定。我更新了plunker。一旦看到。如果我错过了任何内容,请告诉我。谢谢。这是一个很好的答案。但是,如何调用我创建时调用的函数/事件呢Sicaly将复选框标记为选中。不明白。您能详细解释一下吗。当我手动单击复选框以选中/取消选中它时,会触发一个事件,我在JS中为该事件调用一个方法。我用该复选框所在行的值填充一个数组。现在,当我用按钮选中/取消选中它时,该方法不可用ng按复选框check/uncheck.Ok开火。我更新了plunker。一旦看到。如果我遗漏了什么,告诉我。