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 相关文章推荐
jquery tools之tooltip
Jul 25 Javascript
jquery $.fn $.fx是什么意思有什么用
Nov 04 Javascript
javascript实现根据身份证号读取相关信息
Dec 17 Javascript
详解jQuery向动态生成的内容添加事件响应jQuery live()方法
Nov 02 Javascript
Angular 常用指令实例总结整理
Dec 13 Javascript
Vue的Class与Style绑定的方法
Sep 01 Javascript
jQuery简单实现向列表动态添加新元素的方法示例
Dec 25 jQuery
vuex的使用及持久化state的方式详解
Jan 23 Javascript
webpack+react+antd脚手架优化的方法
Apr 02 Javascript
vue.js提交按钮时进行简单的if判断表达式详解
Aug 08 Javascript
json字符串对象转换代码实例
Sep 28 Javascript
js实现AI五子棋人机大战
May 28 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
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
2016/10/11 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
2016/12/09 PHP
Jquery index()方法 获取相应元素索引值
2012/10/12 Javascript
js实现动态添加、删除行、onkeyup表格求和示例
2013/08/18 Javascript
js对象的复制继承实例
2015/01/10 Javascript
JS实现灵巧的下拉导航效果代码
2015/08/25 Javascript
js实现微博发布小功能
2017/01/12 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
微信小程序 引入es6 promise
2017/04/12 Javascript
Vue 解决多级动态面包屑导航的问题
2019/11/04 Javascript
React学习之受控组件与数据共享实例分析
2020/01/06 Javascript
使用JavaScript获取扫码枪扫描得到的条形码的思路代码详解
2020/06/10 Javascript
小程序组件传值和引入sass的方法(使用vant Weapp组件库)
2020/11/24 Javascript
用实例说明python的*args和**kwargs用法
2013/11/01 Python
Python随机生成一个6位的验证码代码分享
2015/03/24 Python
按日期打印Python的Tornado框架中的日志的方法
2015/05/02 Python
Python Paramiko模块的使用实际案例
2018/02/01 Python
python实现SOM算法
2018/02/23 Python
python+opencv识别图片中的圆形
2020/03/25 Python
python遍历一个目录,输出所有的文件名的实例
2018/04/23 Python
Python简直是万能的,这5大主要用途你一定要知道!(推荐)
2019/04/03 Python
python爬虫实现中英翻译词典
2019/06/25 Python
将 Ubuntu 16 和 18 上的 python 升级到最新 python3.8 的方法教程
2020/03/11 Python
10个python3常用排序算法详细说明与实例(快速排序,冒泡排序,桶排序,基数排序,堆排序,希尔排序,归并排序,计数排序)
2020/03/17 Python
在HTML5中如何使用CSS建立不可选的文字
2014/10/17 HTML / CSS
LocalStorage记住用户和密码功能
2017/07/24 HTML / CSS
HTML5拖拽API经典实例详解
2018/04/20 HTML / CSS
html5启动原生APP总结
2020/07/03 HTML / CSS
巧克力领导品牌瑞士莲美国官网:Lindt Chocolate美国
2016/08/25 全球购物
英国花园家具中心:Garden Furniture Centre
2017/08/24 全球购物
印度网上药店:1mg
2017/10/13 全球购物
年会主持词结束语
2014/03/27 职场文书
学校运动会广播稿范文
2014/10/02 职场文书
大学生先进个人主要事迹材料
2015/11/04 职场文书
MySQL 慢查询日志深入理解
2021/04/22 MySQL
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
2022/04/14 Python