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滚动条多种样式,推荐
Feb 05 Javascript
jQuery 判断元素上是否绑定了事件
Oct 28 Javascript
JavaScript EasyPager 分页函数
May 25 Javascript
javascript学习笔记(十五) js间歇调用和超时调用
Jun 20 Javascript
jquery ztree实现树的搜索功能
Feb 25 Javascript
瀑布流的实现方式(原生js+jquery+css3)
Jun 28 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
Oct 10 Javascript
浅谈React Native Flexbox布局(小结)
Jan 08 Javascript
vue router 跳转时打开新页面的示例方法
Jul 28 Javascript
layui时间控件选择时间范围的实现方法
Sep 28 Javascript
6种JavaScript继承方式及优缺点(小结)
Feb 06 Javascript
Vue如何实现变量表达式选择器
Feb 18 Vue.js
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
打造计数器DIY三步曲(下)
2006/10/09 PHP
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
2007/09/24 PHP
PHP中file_exists()判断中文文件名无效的解决方法
2014/11/12 PHP
php实现cookie加密的方法
2015/03/10 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
PHP使用Curl实现模拟登录及抓取数据功能示例
2018/04/27 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
2020/02/27 PHP
js获取浏览器的可视区域尺寸的实现代码
2011/11/30 Javascript
无缝滚动js代码通俗易懂(自写)
2013/06/19 Javascript
JS操作JSON要领详细总结
2013/08/25 Javascript
js实现发送验证码后的倒计时功能
2015/05/28 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
谈谈JavaScript中function多重理解
2015/08/28 Javascript
JS组件Bootstrap Table表格行拖拽效果实现代码
2020/08/27 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
vue2.0项目中使用Ueditor富文本编辑器示例代码
2017/08/14 Javascript
Bootstrap一款超好用的前端框架
2017/09/25 Javascript
webpack配置导致字体图标无法显示的解决方法
2018/03/06 Javascript
JS实现图片拖拽交换效果
2018/11/30 Javascript
[38:21]2018DOTA2亚洲邀请赛3月30日 小组赛A组 LGD VS Newbee
2018/03/31 DOTA
netbeans7安装python插件的方法图解
2013/12/24 Python
Python的面向对象思想分析
2015/01/14 Python
Python的Django框架可适配的各种数据库介绍
2015/07/15 Python
urllib和BeautifulSoup爬取维基百科的词条简单实例
2018/01/17 Python
pandas string转dataframe的方法
2018/04/11 Python
Python 占位符的使用方法详解
2019/07/10 Python
Python 实现键盘鼠标按键模拟
2020/11/18 Python
HTML5 MiranaVideo播放器 (代码开源)
2010/06/11 HTML / CSS
使用HTML5的Notification API制作web通知的教程
2015/05/08 HTML / CSS
北卡罗来纳州豪华家具和家居装饰店:Carolina Rustica
2018/10/30 全球购物
自我推荐信范文
2014/05/09 职场文书
2014七年级班主任工作总结
2014/12/05 职场文书
2014年艾滋病防治工作总结
2014/12/10 职场文书
2015年度企业工作总结
2015/05/21 职场文书
女性健康讲座主持词
2015/07/04 职场文书
上级领导检查欢迎词
2015/09/30 职场文书