AngularJs多选框表格全选反选批量删除
来源:互联网 发布:js除法取整不四舍五入 编辑:程序博客网 时间:2024/05/18 14:24
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="../AngularJS库/angular.js" ></script>
<script>
var app = angular.module("myApp",[]);
app.controller("myCtrl",function($scope){
//数组
$scope.arr = [{
id:1,
name:"小红",
age:20,
sex:"女",
checked:"false"
},{
id:2,
name:"欢欢",
age:15,
sex:"男",
checked:"false"
},{
id:3,
name:"慧慧",
age:25,
sex:"女",
checked:"false"
},{
id:4,
name:"仁仁",
age:32,
sex:"男",
checked:"false"
}];
//计数器
var a = 0;
//全选状态的初始值
$scope.checkAll = false;
//全选的点击事件
$scope.selectAll = function(){
if($scope.checkAll == true){
//如果全选的按钮选中了,把所有的小按钮都选中
for(var i=0;i<$scope.arr.length;i++){
//所有的状态变成true
$scope.arr[i].checked = true;
//计数器加1
a++;
}
}else{
//取消选中按钮,所有的都取消
for(var i=0;i<$scope.arr.length;i++){
//所有的状态变成true
$scope.arr[i].checked = false;
//取消选中再--
a--;
}
}
};
//反着全选的事件
$scope.selectc = function(index){
//如果当前项选中了 ,计数器++
if($scope.arr[index].checked==true){
a++;
}else{
//如果没选中,,计数器--
a--;
}
//如果计数器长度等于数组长度,全选中了,,就把全选的按钮也选中
if(a==$scope.arr.length){
$scope.checkAll=true;
}else{
$scope.checkAll= false;
}
};
//点击 删除所选 按钮的事件
$scope.deletePerson = function(){
//alert("6");
if(a==0){
//一个也没选中
alert("啥都没选");
}else{
//a数量大于0
for(var i=0;i<$scope.arr.length;i++){
if($scope.arr[i].checked==true){
//遍历过程中,如果选中了就删除
$scope.arr.splice(i,1);
//必须写i--,因为可能删除了当前那一行以后,,下标超出去了
i--;
a--;
}
}
$scope.checkAll = false;
}
};
});
</script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<center>
<button ng-click="deletePerson()">删除选中项</button>
<br /><br />
<table border="1" cellpadding="10" cellspacing="0" width="500px">
<thead>
<th>
<input type="checkbox" ng-model="checkAll" ng-click="selectAll()"/>全选
</th>
<th>id</th>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
</thead>
<tr ng-repeat="x in arr" align="center">
<td><input type="checkbox" ng-model="x.checked" ng-click="selectc($index)"/></td>
<td>{{x.id}}</td>
<td>{{x.name}}</td>
<td>{{x.age}}</td>
<td>{{x.sex}}</td>
</tr>
</table>
<div ng-repeat="x in arr">
<span>{{x.checked}}</span>
</div>
</center>
</body>
</html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="../AngularJS库/angular.js" ></script>
<script>
var app = angular.module("myApp",[]);
app.controller("myCtrl",function($scope){
//数组
$scope.arr = [{
id:1,
name:"小红",
age:20,
sex:"女",
checked:"false"
},{
id:2,
name:"欢欢",
age:15,
sex:"男",
checked:"false"
},{
id:3,
name:"慧慧",
age:25,
sex:"女",
checked:"false"
},{
id:4,
name:"仁仁",
age:32,
sex:"男",
checked:"false"
}];
//计数器
var a = 0;
//全选状态的初始值
$scope.checkAll = false;
//全选的点击事件
$scope.selectAll = function(){
if($scope.checkAll == true){
//如果全选的按钮选中了,把所有的小按钮都选中
for(var i=0;i<$scope.arr.length;i++){
//所有的状态变成true
$scope.arr[i].checked = true;
//计数器加1
a++;
}
}else{
//取消选中按钮,所有的都取消
for(var i=0;i<$scope.arr.length;i++){
//所有的状态变成true
$scope.arr[i].checked = false;
//取消选中再--
a--;
}
}
};
//反着全选的事件
$scope.selectc = function(index){
//如果当前项选中了 ,计数器++
if($scope.arr[index].checked==true){
a++;
}else{
//如果没选中,,计数器--
a--;
}
//如果计数器长度等于数组长度,全选中了,,就把全选的按钮也选中
if(a==$scope.arr.length){
$scope.checkAll=true;
}else{
$scope.checkAll= false;
}
};
//点击 删除所选 按钮的事件
$scope.deletePerson = function(){
//alert("6");
if(a==0){
//一个也没选中
alert("啥都没选");
}else{
//a数量大于0
for(var i=0;i<$scope.arr.length;i++){
if($scope.arr[i].checked==true){
//遍历过程中,如果选中了就删除
$scope.arr.splice(i,1);
//必须写i--,因为可能删除了当前那一行以后,,下标超出去了
i--;
a--;
}
}
$scope.checkAll = false;
}
};
});
</script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<center>
<button ng-click="deletePerson()">删除选中项</button>
<br /><br />
<table border="1" cellpadding="10" cellspacing="0" width="500px">
<thead>
<th>
<input type="checkbox" ng-model="checkAll" ng-click="selectAll()"/>全选
</th>
<th>id</th>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
</thead>
<tr ng-repeat="x in arr" align="center">
<td><input type="checkbox" ng-model="x.checked" ng-click="selectc($index)"/></td>
<td>{{x.id}}</td>
<td>{{x.name}}</td>
<td>{{x.age}}</td>
<td>{{x.sex}}</td>
</tr>
</table>
<div ng-repeat="x in arr">
<span>{{x.checked}}</span>
</div>
</center>
</body>
</html>
阅读全文
0 0
- AngularJs多选框表格全选反选批量删除
- angularjs表格批量删除和全选反选
- AngularJS表格数据全选反选批量删除,删除的数据添加到数组里
- AngularJS表格数据全选反选,批量删除,借助计数器删除
- Angularjs 全选、反选、勾选删除、批量删除
- AngularJs实现添加,批量删除,全选,反选等功能
- 前端_全选、反选、批量删除、表格
- 全选,反选,批量删除
- 全选、反选、批量删除
- 批量删除 全选 反选
- AngularJS 查询、全选、反选、全部删除、批量删除、添加、修改
- 批量删除+单个删除+全选反选
- angularJS全选/批量删除
- AngularJS综合用户信息, 表单验证,过滤查询,全选反选,批量删除,修改,添加
- AngularJS商品新增订单批量发货删除排序全选反选日期过滤
- AngularJS购物车实现添加用户,修改用户,全选反选,批量删除
- yii框架全选反选批量删除
- 全选,反选,批量删除,全不选,即点即改
- C_笔记整理_2
- Unity简单的单例实例
- 带父标签的自定义标签
- <最短路模板> 热浪
- android 五大布局(3)相对布局
- AngularJs多选框表格全选反选批量删除
- opencv python
- 配置python3的pip3
- Oracle 恢复.bat 出现监听未启动
- extends和implements区别
- Boxes of Chocolates Again UVA
- 泛型单例
- 最适合做CEO的性格ESFJ职业规划要素与短板
- 51nod 1256 (最基础)乘法逆元