jQuery实现checkbox的简单操作


Posted in jQuery onNovember 18, 2017

对复选框组的全选、全不选、不全选,获取选中的复选框的值的操作

1.点击全选按钮,复选框组全部选中或者全部取消。
2.实现全选按钮和复选框组的联动,当复选框组中有一个没有被选中后,那么id=‘checkedAll'的全选按钮应该要取消选中;当复选框组全部选中后,全选按钮也应该被选中。
3.获取已选中的复选框的值。

代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>对复选框组的全选操作</title>
  <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
  <script type="text/javascript">
    $(function(){
      /*全选
      全选cheched和下方的checkbox按钮的checked是一致的,
      故可用this.checked。
      注意:$(this).checked是错的
      */
      $('#checkedAll').click(function() {
        $('[name=item]:checkbox').prop('checked', this.checked);
      });

      /*判断复选框的总数,是否和选中的复选框的数量相等
      相等:全选了
      不相等:没有全选
      */
      $('[name=item]:checkbox').click(function() {
        /*得到的是ul下 name=item 的复选框数组*/
        var $checkedArray = $('[name=item]:checkbox');
        /*$checkedArray.filter(':checked') -----> 已经选择的复选框 */
        $('#checkedAll').prop('checked',$checkedArray.length==$checkedArray.filter(':checked').length);






      });
    });
  </script>
  <script type="text/javascript">
    $(function () {
      //获取已选的复选框的值
      var checkedArray = new Array();//放已经选择的checkbox的value
      var count;//已经选择的个数
      $('#btn_submit').click(function() {
        checkedArray.length=0;
        count=0;
        $('[name=item]:checkbox:checked').each(function() {
          checkedArray.push($(this).val());
          count++;
        });
        if (checkedArray.length==0) {
          alert("Please check one at least.");
          return;
        }
        confirm("已选复选框的值:"+checkedArray+"\n"+"选中的复选框个数:"+count);
      });
    })
  </script>
</head>
<body>
  <form action="#" method="POST">
    <input type="checkbox" id="checkedAll"><label for="checkedAll">全选</label>
    <ul>
      <li><input type="checkbox" name="item" value="basketball">篮球</li>
      <li><input type="checkbox" name="item" value="football">足球</li>
      <li><input type="checkbox" name="item" value="badminton">羽毛球</li>
      <li><input type="checkbox" name="item" value="pingpong">兵乓球</li>
      <li><input type="checkbox" name="item" value="swimming">游泳</li>
      <li><input type="checkbox" name="item" value="running">跑步</li>
    </ul>
    <button type="button" id="btn_submit" value="提交button">提交</button>
  </form>
</body>
</html>

对于代码中的不足,不够简洁的还可以再优化的地方,如果有什么更好的想法和实现方法,欢迎一起交流学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery插件FusionCharts实现的Marimekko图效果示例【附demo源码】
Mar 24 jQuery
jQuery+Ajax实现用户名重名实时检测
Jun 01 jQuery
jquery实现一个全局计时器(商城可用)
Jun 30 jQuery
jQuery Position方法使用和兼容性
Aug 23 jQuery
jquery实现用户登陆界面(示例讲解)
Sep 06 jQuery
jQuery plugin animsition使用小结
Sep 14 jQuery
jquery写出PC端轮播图实例
Jan 26 jQuery
jQuery中内容过滤器简单用法示例
Mar 31 jQuery
jQuery插件实现弹性运动完整示例
Jul 07 jQuery
jQuery.validate.js表单验证插件的使用代码详解
Oct 22 jQuery
JQuery Ajax执行跨域请求数据的解决方案
Dec 10 jQuery
jQuery实现图片切换效果
Oct 19 jQuery
基于jquery实现五星好评
Nov 18 #jQuery
jQuery实现滚动效果
Nov 17 #jQuery
基于jQuery实现定位导航位置效果
Nov 15 #jQuery
前端html中jQuery实现对文本的搜索功能并把搜索相关内容显示出来
Nov 14 #jQuery
jQuery除指定区域外点击任何地方隐藏DIV功能
Nov 13 #jQuery
jQuery实现checkbox即点即改批量删除及中间遇到的坑
Nov 11 #jQuery
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
Nov 10 #jQuery
You might like
发挥语言的威力--融合PHP与ASP
2006/10/09 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
短信提示使用 特效
2007/01/19 Javascript
一个js实现的所谓的滑动门
2007/05/23 Javascript
Javascript模块模式分析
2008/05/16 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
JQuery导航菜单选择特效
2016/04/11 Javascript
jQuery内容折叠效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
谈谈因Vue.js引发关于getter和setter的思考
2016/12/02 Javascript
js常用DOM方法详解
2017/02/04 Javascript
JS实现AES加密并与PHP互通的方法分析
2017/04/19 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
2017/04/25 Javascript
BootstrapTable加载按钮功能实例代码详解
2017/09/22 Javascript
webpack搭建vue 项目的步骤
2017/12/27 Javascript
Vue三层嵌套路由的示例代码
2018/05/05 Javascript
vue滚动tab跟随切换效果
2020/06/29 Javascript
Vue+Koa2+mongoose写一个像素绘板的实现方法
2019/09/10 Javascript
微信小程序 button样式设置为图片的方法
2020/06/19 Javascript
[02:41]《西雅图我们来了》2015国际邀请赛出征全记录
2015/07/23 DOTA
[03:21]辉夜杯主赛事 12月25日TOP5
2015/12/26 DOTA
[01:08:09]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第二局
2016/03/02 DOTA
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
浅谈python之高阶函数和匿名函数
2019/03/21 Python
Python交互式图形编程的实现
2019/07/25 Python
python下PyGame的下载与安装过程及遇到问题
2019/08/04 Python
python 删除系统中的文件(按时间,大小,扩展名)
2020/11/19 Python
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
2015试用期转正工作总结
2014/12/12 职场文书
介绍信格式样本
2015/05/05 职场文书
资金申请报告范文
2015/05/14 职场文书
护理心得体会范文
2016/01/22 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书
详解CocosCreator项目结构机制
2021/04/14 Javascript
详解java如何集成swagger组件
2021/06/21 Java/Android
仅用几行Python代码就能复制她的U盘文件?
2021/06/26 Python
nginx常用配置conf的示例代码详解
2022/03/21 Servers