angular 根据checked进行删除过滤增删
2018-01-09 20:37
447 查看
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/angular.min.js"></script>
<script>
var app=angular.module("gaoyn",[]);
app.controller("democ",function($scope){
$scope.px='level';
$scope.sj=true;
$scope.stus = [{
ck:false,
name: '张三',
sex: '男',
sal: 10000,
level:1
}, {
ck:true,
name: '李四',
sex: '男',
sal: 18000,
level:2
}, {
ck:false,
name: '王四',
sex: '男',
sal: 18000,
level:20
}, {
ck:false,
name: '张四',
sex: '男',
sal: 18000,
level:5
}];
$scope.count=function(num,sname){
//根据索引查找对象---->对象的level级别
console.log("根据索引查找的对象",$scope.stus[i]);
for(var i=0;i<$scope.stus.length;i++){
if($scope.stus[i].name==sname){
$scope.stus[i].level=$scope.stus[i].level+num;
}
}
}
//计算所有人工资的方法;在控制器中定义方法
$scope.sum = function() {
var count = 0;
for(var i in $scope.stus) {
count = count + $scope.stus[i].sal*$scope.stus[i].level;
}
return count;
}
//批量删除
$scope.delAll=function(){
var count=0;
//遍历数组
for(var i=0;i<$scope.stus.length;i++){
if($scope.stus[i].ck){
count++;
$scope.stus.splice(i,1);
i--;
}
}
if(count==0){
alert("请选择!");
}
}
$scope.ckAll=function(){
for(var i=0;i<$scope.stus.length;i++){
$scope.stus[i].ck=$scope.flag;
}
}
});
</script>
</head>
<body ng-app="gaoyn" ng-controller="democ">
<!-- ng-click调用的是控制器的方法 onclick JavaScript原始的定义方法 -->
<button ng-click="add()">添加学生</button>
根据姓名查询:<input type="text" ng-model="selname" />
<button ng-click="delAll()">批量删除</button>
<!--ng-modle 用在form表单的类型标签,把value的值自动赋值给stu -->
<table border="1px">
<tr>
<td><input type="checkbox" ng-click="ckAll()" ng-model="flag" /></td>
<td>序号</td>
<td>姓名</td>
<td>性别</td>
<td ng-click="px='sal'; sj=!sj">工资</td>
<td ng-click="px='level'; sj=!sj">级别</td>
<td>小计</td>
</tr>
<tr ng-repeat="s in stus|orderBy:px:sj|filter:{name:selname}">
<td><input type="checkbox" ng-model="s.ck"/> </td>
<td>{{$index}}</td>
<td>
<span ng-click="f=true"> {{s.name}} </span>
<span ng-show="f">
<input ng-model="s.name" /> <button ng-click="f=false">保存</button>
</span>
</td>
<td>
<span ng-click="f1=true">
{{s.sex}}
</span>
<span ng-show="f1">
<input ng-model="s.sex" />
<button ng-click="f1=false"> 保存</button>
</span>
</td>
<td>{{s.sal}}</td>
<td><button ng-click="count(+1,s.name)">+</button> <input style="width: 30px;" ng-model="s.level" /><button ng-click="count(-1,s.sname)">-</button> </td>
<td>{{s.level*s.sal}}</td>
</tr>
</table>
总价:{{sum()}}
</body>
</html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/angular.min.js"></script>
<script>
var app=angular.module("gaoyn",[]);
app.controller("democ",function($scope){
$scope.px='level';
$scope.sj=true;
$scope.stus = [{
ck:false,
name: '张三',
sex: '男',
sal: 10000,
level:1
}, {
ck:true,
name: '李四',
sex: '男',
sal: 18000,
level:2
}, {
ck:false,
name: '王四',
sex: '男',
sal: 18000,
level:20
}, {
ck:false,
name: '张四',
sex: '男',
sal: 18000,
level:5
}];
$scope.count=function(num,sname){
//根据索引查找对象---->对象的level级别
console.log("根据索引查找的对象",$scope.stus[i]);
for(var i=0;i<$scope.stus.length;i++){
if($scope.stus[i].name==sname){
$scope.stus[i].level=$scope.stus[i].level+num;
}
}
}
//计算所有人工资的方法;在控制器中定义方法
$scope.sum = function() {
var count = 0;
for(var i in $scope.stus) {
count = count + $scope.stus[i].sal*$scope.stus[i].level;
}
return count;
}
//批量删除
$scope.delAll=function(){
var count=0;
//遍历数组
for(var i=0;i<$scope.stus.length;i++){
if($scope.stus[i].ck){
count++;
$scope.stus.splice(i,1);
i--;
}
}
if(count==0){
alert("请选择!");
}
}
$scope.ckAll=function(){
for(var i=0;i<$scope.stus.length;i++){
$scope.stus[i].ck=$scope.flag;
}
}
});
</script>
</head>
<body ng-app="gaoyn" ng-controller="democ">
<!-- ng-click调用的是控制器的方法 onclick JavaScript原始的定义方法 -->
<button ng-click="add()">添加学生</button>
根据姓名查询:<input type="text" ng-model="selname" />
<button ng-click="delAll()">批量删除</button>
<!--ng-modle 用在form表单的类型标签,把value的值自动赋值给stu -->
<table border="1px">
<tr>
<td><input type="checkbox" ng-click="ckAll()" ng-model="flag" /></td>
<td>序号</td>
<td>姓名</td>
<td>性别</td>
<td ng-click="px='sal'; sj=!sj">工资</td>
<td ng-click="px='level'; sj=!sj">级别</td>
<td>小计</td>
</tr>
<tr ng-repeat="s in stus|orderBy:px:sj|filter:{name:selname}">
<td><input type="checkbox" ng-model="s.ck"/> </td>
<td>{{$index}}</td>
<td>
<span ng-click="f=true"> {{s.name}} </span>
<span ng-show="f">
<input ng-model="s.name" /> <button ng-click="f=false">保存</button>
</span>
</td>
<td>
<span ng-click="f1=true">
{{s.sex}}
</span>
<span ng-show="f1">
<input ng-model="s.sex" />
<button ng-click="f1=false"> 保存</button>
</span>
</td>
<td>{{s.sal}}</td>
<td><button ng-click="count(+1,s.name)">+</button> <input style="width: 30px;" ng-model="s.level" /><button ng-click="count(-1,s.sname)">-</button> </td>
<td>{{s.level*s.sal}}</td>
</tr>
</table>
总价:{{sum()}}
</body>
</html>
相关文章推荐
- OpenGrok添加根据文件名后缀进行查询过滤的功能
- Java 8 stream()分组,过滤筛选 List<Object> 根据Object 中的某几个属性作为条件进行分组 去重过滤
- angular 请求网络数据 展示table 查询关键字 过滤 删除 添加 修改
- 韩经哲月考1_angular增删改查批量删除发货
- html_angular增删改查+批量发货 删除 范围查找(条件)+米/*过滤
- jquery内容过滤选择器:内容过滤选择器它是根据元素内部文本内容进行选中。
- Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
- 根据拼音首字母进行过滤的combobox
- 根据某类过滤规则进行元素的匹配
- 在cxgrid中根据第一列的ID值,对第二列进行下拉过滤
- iOS开发:一个高仿美团的团购ipad客户端的设计和实现(功能:根据拼音进行检索并展示数据,离线缓存团购数据,浏览记录与收藏记录的批量删除等)
- easyui中combotree根据关键字进行本地过滤
- Excel根据不同列进行OR条件过滤
- 一个根据配置文件对数据库进行增删改查的三层架构解决方法
- List集合中删除属性(一个或者多个属性)相同的对象返回List且根据对象属性进行排序输出
- 使用 通用mapper时 根据主键进行 删除 更新操作 遇到的问题
- jquery---- 数组根据值进行删除
- 根据拼音首字母进行过滤的combobox
- android 根据时间是否过期进行文件的删除
- JPA(hibernate)一对多根据多的一方某属性进行过滤查询