jQuery实现checkbox全选、反选及删除等操作的方法详解


Posted in jQuery onAugust 02, 2019

本文实例讲述了jQuery实现checkbox全选、反选及删除等操作的方法。分享给大家供大家参考,具体如下:

运行效果:

jQuery实现checkbox全选、反选及删除等操作的方法详解

1.list.html

说明:用checkbox数组Check[]存放每一行的ID值

<div id="con">
 <table width="100%" cellspacing="1" cellpadding="0">
 <tr>
  <th><input id="CheckAll" name='CheckAll' type='checkbox'></th>
  <th>ID</th>
  <th>Name</th>
  <th>Date</th>
 </tr>
 <tr>
  <td><input id='Check[]' name='Check[]' type='checkbox' value="1"></td>
  <td>10001</td>
  <td>XXX</td>
  <td>2015-12-01</td>
 </tr>
 <tr>
  <td><input id='Check[]' name='Check[]' type='checkbox' value="2"></td>
  <td>10002</td>
  <td>XXX</td>
  <td>2015-12-02</td>
 </tr>
 <tr>
  <td><input id='Check[]' name='Check[]' type='checkbox' value="3"></td>
  <td>10003</td>
  <td>XXX</td>
  <td>2015-12-03</td>
 </tr>
</table>
<div id="bottom">
 <input id="Delete" name="Delete" type="button" value=" 删 除 " class="btn btn-danger radius"/>
</div>
</div>

2.功能:全选/全不选

说明:如果需要这里还可以根据选择结果显示/隐藏【删除】等按钮

//全选/全不选
 $("#CheckAll").bind("click",function(){
  $("input[name='Check[]']").prop("checked",this.checked);
  //显示删除按钮
  /*if(this.checked == true){
    $("input[name='Delete'").css("display",'block');
  }else{
    $("input[name='Delete'").css("display",'none');
  }*/
 });

3.功能:批量删除

说明:需注意的是在传值的的时候,要把获取的数组checkData转化成字符串checkData.toString()

//批量删除
$("#Delete").click(function(){
 if(confirm('确定要删除所选吗?')){
   var checks = $("input[name='Check[]']:checked");
   if(checks.length == 0){ alert('未选中任何项!');return false;}
   //将获取的值存入数组
   var checkData = new Array();
   checks.each(function(){
    checkData.push($(this).val());
   });
   $.get("<{spUrl c=order a=delete}>",{Check:checkData.toString()},function(result){ if(result = true){ window.location.reload();}});
   }
 }
});

实际应用中往往不仅仅只有批量删除一个操作,通常还有其它的批量操作,我们可以对上面代码优化整合一下,将通用的功能放在一个文件中。

通用文件:jquery.ready.js

说明:因为这一部分较为通用可以放在一个公共的js文件里面,获取checkbox值可以写成一个变量函数

//获取被选中checkbox值
var checked = function(){
 var checks = $("input[name='Check[]']:checked");
 if(checks.length == 0){ alert('未选中任何项!');return false;}
 var checkData = new Array();
 checks.each(function(){
   checkData.push($(this).val());
 });
 return checkData;
};
//全选/全不选
$("#CheckAll").bind("click",function(){
  $("input[name='Check[]']").prop("checked",this.checked);
  //显示删除按钮
  /*if(this.checked == true){
   $("input[name='Delete'").css("display",'block');
  }else{
   $("input[name='Delete'").css("display",'none');
  }*/
});

list.js

//批量删除
$("#Delete").click(function(){
 if(val = checked()){
   if(confirm('确定要删除所选吗?')){
    $.get("<{spUrl c=order a=delete}>",{Check:val.toString()},function(result){ if(result = true){ window.location.reload();}});
   }
 }
});
//批量操作...

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
Mar 23 jQuery
如何选择jQuery版本 1.x? 2.x? 3.x?
Apr 01 jQuery
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
Apr 02 jQuery
基于JQuery和原生JavaScript实现网页定位导航特效
Apr 03 jQuery
jquery实现简单实用的轮播器
May 23 jQuery
jQuery EasyUI开发技巧总结
Sep 26 jQuery
jQuery 利用ztree实现树形表格的实例代码
Sep 27 jQuery
JS/jQuery实现DIV延时几秒后消失或显示的方法
Feb 12 jQuery
jQuery实现的导航条点击后高亮显示功能示例
Mar 04 jQuery
JQuery基于FormData异步提交数据文件
Sep 01 jQuery
jQuery实现简单三级联动效果
Sep 05 jQuery
使用jquery实现轮播图效果
Jan 02 jQuery
jQuery pager.js 插件动态分页功能实例分析
Aug 02 #jQuery
jQuery中DOM常见操作实例小结
Aug 01 #jQuery
jQuery中DOM操作原则实例分析
Aug 01 #jQuery
JS/jQuery实现超简单的Table表格添加,删除行功能示例
Jul 31 #jQuery
jquery.pager.js分页实现详解
Jul 29 #jQuery
jquery.pager.js实现分页效果
Jul 29 #jQuery
jQuery-Citys省市区三级菜单联动插件使用详解
Jul 26 #jQuery
You might like
PHP5+UTF8多文件上传类
2008/10/17 PHP
php做下载文件的实现代码及文件名中乱码解决方法
2011/02/03 PHP
php判断用户是否手机访问代码
2015/06/08 PHP
centos7上编译安装php7以php-fpm方式连接apache
2018/11/08 PHP
JavaScript 高级篇之DOM文档,简单封装及调用、动态添加、删除样式(六)
2012/04/07 Javascript
给Flash加一个超链接(推荐使用透明层)兼容主流浏览器
2013/06/09 Javascript
JQuery Mobile 弹出式登录框的实现方法
2016/05/28 Javascript
js动态生成form 并用ajax方式提交的实现方法
2016/09/09 Javascript
jQuery滑动效果实现方法分析
2018/09/05 jQuery
node中的session的具体使用
2018/09/14 Javascript
微信小程序用户位置权限的获取方法(拒绝后提醒)
2018/11/15 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
[04:29]2016国际邀请赛中国区预选赛Ehome战队教练采访
2016/06/27 DOTA
python 获取本机ip地址的两个方法
2013/02/25 Python
给Python入门者的一些编程建议
2015/06/15 Python
python使用sqlite3时游标使用方法
2018/03/13 Python
利用python将pdf输出为txt的实例讲解
2018/04/23 Python
python中字符串内置函数的用法总结
2018/09/13 Python
详解Python字典小结
2018/10/20 Python
浅析Python 读取图像文件的性能对比
2019/03/07 Python
远程部署工具Fabric详解(支持Python3)
2019/07/04 Python
在Mac中配置Python虚拟环境过程解析
2020/06/22 Python
如何通过python检查文件是否被占用
2020/12/18 Python
html5 Canvas画图教程(2)—画直线与设置线条的样式如颜色/端点/交汇点
2013/01/09 HTML / CSS
如何避免常见的6种HTML5错误用法
2017/11/06 HTML / CSS
美国受欢迎的女性牛仔裤品牌:DL1961
2016/11/12 全球购物
Android interview questions
2016/12/25 面试题
会计电算化专业毕业生求职信范文
2013/12/10 职场文书
点菜员岗位职责范本
2014/02/14 职场文书
元旦促销方案
2014/03/15 职场文书
一份恶作剧的检讨书
2014/09/13 职场文书
商务考察邀请函模板
2015/02/02 职场文书
宾馆前台接待岗位职责
2015/04/02 职场文书
学术会议通知范文
2015/04/15 职场文书
nginx 防盗链防爬虫配置详解
2021/03/31 Servers
win10系统计算机图标怎么调出来?win10调出计算机图标的方法
2022/08/14 数码科技