JS实现复选框的全选和批量删除功能


Posted in Javascript onApril 05, 2017

如图示:

JS实现复选框的全选和批量删除功能

功能描述:在勾选了全选时,所有的商品都会勾选,在取消全选时,取消所有物品的勾选。如果点击批量删除,删除所勾选的商品。

<td align="center" width="12%" >
 <input type="checkbox" id="allChecks" onclick="ckAll()" /> 全选/全不选
</td>
//全选
 function ckAll(){
 var flag=document.getElementById("allChecks").checked;
 var cks=document.getElementsByName("check");
 for(var i=0;i<cks.length;i++){
 cks[i].checked=flag;
 }
 }

如代码所示,全选/全不选的复选框添加onclick事件。每当点击了这个复选框时,触发ckAll事件。在ckAll()方法中,我们首先获得allChecks当前的勾选状态,然后将其赋值为其它商品的复选框即可。这一步实现很简单。复杂的是如何实现商品的批量删除。

起初我一直在想,复选框只是一个组件,到底怎么才能和商品的编号(主键)有关系。无意中发现复选框组件中有一个value的值,我可以把商品的编号赋值给value,然后在批量删除时获得value的值,通过get请求传送给servlet。成功解决了这个问题。

代码如下:

<td style="CURSOR: hand; HEIGHT: 22px" align="center"
 width="23">
 <input type="checkbox" name="check" value="${book.id}"/> 
</td>
//批量删除
 function delAllProduct(){
 if(!confirm("确定要删除这些图书吗?")){
 return ;
 }
 var cks=document.getElementsByName("check");
 var str="";
 //拼接所有的图书id
 for(var i=0;i<cks.length;i++){
 if(cks[i].checked){
 str+="id="+cks[i].value+"&";
 }
 }
 //去掉字符串末尾的‘&'
 str=str.substring(0, str.length-1);
 location.href="${pageContext.request.contextPath}/servlet/delAllBooksServlet?" rel="external nofollow" +str;
 }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
MooBox 基于Mootools的对话框插件
Jan 20 Javascript
jQuery+JSON+jPlayer实现QQ空间音乐查询功能示例
Jun 17 Javascript
JS获取地址栏参数的小例子
Aug 23 Javascript
JavaScript对IE操作的经典代码(推荐)
Mar 10 Javascript
浅析jQuery EasyUI中的tree使用指南
Dec 18 Javascript
在linux中使用包管理器安装node.js
Mar 13 Javascript
javascript每日必学之基础入门
Feb 16 Javascript
简单理解Vue条件渲染
Dec 03 Javascript
JavaScript实现左右下拉框动态增删示例
Mar 09 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
Apr 25 Javascript
JS实现左边列表移到到右边列表功能
Mar 28 Javascript
vue或react项目生产环境去掉console.log的操作
Sep 02 Javascript
Ajax验证用户名或昵称是否已被注册
Apr 05 #Javascript
JS二叉树的简单实现方法示例
Apr 05 #Javascript
Angular.JS利用ng-disabled属性和ng-model实现禁用button效果
Apr 05 #Javascript
js获取指定时间的前几秒
Apr 05 #Javascript
JavaScript使用原型和原型链实现对象继承的方法详解
Apr 05 #Javascript
webpack2.0搭建前端项目的教程详解
Apr 05 #Javascript
详解使用fetch发送post请求时的参数处理
Apr 05 #Javascript
You might like
简单分析ucenter 会员同步登录通信原理
2014/08/25 PHP
yii2框架中使用下拉菜单的自动搜索yii-widget-select2实例分析
2016/01/09 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
phpcms配置列表页以及获得文章发布时间
2017/07/04 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
JQuery 初体验(建议学习jquery)
2009/04/25 Javascript
动态加载JS文件的三种方法
2013/11/08 Javascript
Javscript删除数组中指定元素并返回新数组
2014/03/06 Javascript
深入理解$.each和$(selector).each
2016/05/15 Javascript
JS冒泡事件与事件捕获实例详解
2016/11/25 Javascript
使用JavaScript为一张图片设置备选路径的方法
2017/01/04 Javascript
详解vue2.0组件通信各种情况总结与实例分析
2017/03/22 Javascript
vue.js选中动态绑定的radio的指定项
2017/06/02 Javascript
VUE利用vuex模拟实现新闻点赞功能实例
2017/06/28 Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
2017/12/19 Javascript
js点击时关闭该范围下拉菜单之外的菜单方法
2018/01/11 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
Python中使用第三方库xlutils来追加写入Excel文件示例
2015/04/05 Python
Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
2018/04/24 Python
通过celery异步处理一个查询任务的完整代码
2019/11/19 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
2020/01/15 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
调整Jupyter notebook的启动目录操作
2020/04/10 Python
利用matplotlib为图片上添加触发事件进行交互
2020/04/23 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
2020/07/20 Python
python和go语言的区别是什么
2020/07/20 Python
python在CMD界面读取excel所有数据的示例
2020/09/28 Python
最新pycharm安装教程
2020/11/18 Python
Python+Appium实现自动化清理微信僵尸好友的方法
2021/02/04 Python
html5-canvas中使用clip抠出一个区域的示例代码
2018/05/25 HTML / CSS
网络艺术零售业的先驱者:artrepublic
2017/09/26 全球购物
教师自查自纠材料
2014/10/14 职场文书
2016五一劳动节慰问信
2015/11/30 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
MySQL数据库压缩版本安装与配置详细教程
2021/05/21 MySQL
MySQL 全文检索的使用示例
2021/06/07 MySQL