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 相关文章推荐
JS的replace方法详细介绍
Nov 09 Javascript
jquery实现背景墙聚光灯效果示例分享
Mar 02 Javascript
让angularjs支持浏览器自动填表
Nov 10 Javascript
JavaScript获取表单enctype属性的方法
Apr 02 Javascript
Javascript下拉刷新的简单实现
Feb 14 Javascript
js+html制作简单验证码
Feb 16 Javascript
几种响应式文字详解
May 19 Javascript
vue实现全选、反选功能
Nov 17 Javascript
详解如何让InstantClick兼容MathJax、百度统计等
Sep 12 Javascript
js数组常用最重要的方法
Feb 04 Javascript
jQuery基于Ajax实现读取XML数据功能示例
May 31 jQuery
js防抖和节流的深入讲解
Dec 06 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
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
ThinkPHP之A方法实例讲解
2014/06/20 PHP
phpcms中的评论样式修改方法
2016/10/21 PHP
在模板页面的js使用办法
2010/04/01 Javascript
jquery 显示*天*时*分*秒实现时间计时器
2014/05/07 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
JavaScript实现字符串与日期的互相转换及日期的格式化
2016/03/07 Javascript
vue做移动端适配最佳解决方案(亲测有效)
2018/09/04 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
详解Vue、element-ui、axios实现省市区三级联动
2019/05/07 Javascript
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
2019/06/04 Javascript
Python splitlines使用技巧
2008/09/06 Python
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
python实现的jpg格式图片修复代码
2015/04/21 Python
Python多线程和队列操作实例
2015/06/21 Python
用matplotlib画等高线图详解
2017/12/14 Python
Python 3.x 安装opencv+opencv_contrib的操作方法
2018/04/02 Python
python可视化实现代码
2019/01/15 Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
2019/08/12 Python
详解Python的三种拷贝方式
2020/02/11 Python
CSS3中box-shadow的用法介绍
2015/07/15 HTML / CSS
HTML5自定义元素播放焦点图动画的实现
2019/09/25 HTML / CSS
美国流行背包品牌:JanSport(杰斯伯)
2018/03/02 全球购物
Optimalprint加拿大:在线打印服务
2020/04/03 全球购物
2014年教师培训的自我评价
2014/01/03 职场文书
开会迟到检讨书
2014/01/08 职场文书
上班上网检讨书
2014/01/29 职场文书
《狼》教学反思
2014/03/02 职场文书
感恩寄语大全
2014/04/11 职场文书
党员学习中共十八大思想报告
2014/09/12 职场文书
党员群众路线个人整改措施思想汇报
2014/10/12 职场文书
幼师大班个人总结
2015/02/13 职场文书
2015年学校食堂工作总结
2015/04/22 职场文书