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树插件zTree使用方法详解
May 02 jQuery
jQuery zTree树插件动态加载实例代码
May 11 jQuery
jQuery条件分页 代替离线查询(附代码)
Aug 17 jQuery
JQuery实现table中tr上移下移的示例(超简单)
Jan 08 jQuery
jQuery实现导航样式布局操作示例【可自定义样式布局】
Jul 24 jQuery
jQuery pagination分页示例详解
Oct 23 jQuery
详解jquery和vue对比
Apr 16 jQuery
JQuery+Bootstrap 自定义全屏Loading插件的示例demo
Jul 03 jQuery
jQuery实现小火箭返回顶部特效
Feb 03 jQuery
jQuery 动画与停止动画效果实例详解
May 19 jQuery
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
Jun 02 jQuery
jQuery中event.target和this的区别详解
Aug 13 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
谈谈PHP语法(3)
2006/10/09 PHP
BBS(php &amp; mysql)完整版(四)
2006/10/09 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
php实现socket推送技术的示例
2017/12/20 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
如何让您的中波更粗更长 - 中波框形天线制作
2021/03/10 无线电
JavaScript基础知识之数据类型
2012/08/06 Javascript
Js nodeType 属性全面解析
2013/11/14 Javascript
jquery插件tooltipv顶部淡入淡出效果使用示例
2013/12/05 Javascript
jQuery分别获取选中的复选框值的示例
2014/06/17 Javascript
JavaScript数组各种常见用法实例分析
2015/08/04 Javascript
一起学写js Calender日历控件
2016/04/14 Javascript
jquery中done和then的区别(详解)
2017/12/19 jQuery
react-router v4如何使用history控制路由跳转详解
2018/01/09 Javascript
bootstrap table支持高度百分比的实例代码
2018/02/28 Javascript
详解ES6系列之私有变量的实现
2018/11/21 Javascript
[05:01]3.19DOTA2发布会 我们都是刀塔人
2014/03/25 DOTA
Python中捕捉详细异常信息的代码示例
2014/09/18 Python
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
用Python计算三角函数之atan()方法的使用
2015/05/15 Python
举例详解Python中threading模块的几个常用方法
2015/06/18 Python
Python实现把数字转换成中文
2015/06/29 Python
Python中函数eval和ast.literal_eval的区别详解
2017/08/10 Python
python实现二分查找算法
2017/09/21 Python
Python迭代器模块itertools使用原理解析
2019/12/11 Python
tornado+celery的简单使用详解
2019/12/21 Python
Python参数传递及收集机制原理解析
2020/06/05 Python
Django-simple-captcha验证码包使用方法详解
2020/11/28 Python
Python中对象的比较操作==和is区别详析
2021/02/12 Python
css3使网页、图片变成灰色兼容大多数浏览器
2014/07/02 HTML / CSS
Waterford英国官方网站:世界上最受欢迎的优质水晶品牌
2019/08/17 全球购物
如何用Python来进行查询和替换一个文本字符串
2014/01/02 面试题
有abstract方法的类一定要用abstract修饰吗
2016/03/14 面试题
实习单位接收函
2014/01/11 职场文书
办公室主任岗位职责
2015/01/31 职场文书
用Python爬取某乎手机APP数据
2021/06/15 Python