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

  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>

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

Write less, do more.

JQuery对checkbox的操作的更多相关文章

  1. jquery对checkbox的操作汇总

    1.全选 $("#btn1").click(function(){ $("input[name='checkbox']").attr("checked ...

  2. jQuery获取checkbox选中项等操作及注意事项

    jQuery获取checkbox选中项等操作及注意事项 今天在做一个项目功能时需要显示checkbox选项来让用户进行选择,由于前端不是很熟练,所以做了一个简单的Demo,其中遇到一些小问题,特记录下 ...

  3. JQuery对CheckBox的一些相关操作

    一.通过选择器选取CheckBox: 1.给CheckBox设置一个id属性,通过id选择器选取: <input type="checkbox" name="myB ...

  4. jQuery对checkbox选中和取消选中操作

    最近做项目发现jQuery对checkbox的全选和非全选操作只有第一次生效,以后就不生效了,不知道是不是jQuery版本库的问题,最终找到了一个解决方案: 把原来的下面这两句: $('input') ...

  5. JQuery设置checkbox选中或取消等相关操作

    $("[name='checkbox']").attr("checked",'true');//全选 $("[name='checkbox']&quo ...

  6. jquery对radio和checkbox的操作

    jQuery获取Radio选择的Value值 代码  $("input[name='radio_name'][checked]").val(); //选择被选中Radio的Valu ...

  7. jquery的checkbox,radio,select等方法总结

    jquery的checkbox,radio,和select是jquery操作的一个难点和重点,很多前端新手对其了解不是很透彻.时间久了不用,我在写的时候有时也难免对某些操作支支吾吾,记不清楚,现在,对 ...

  8. Jquery基础之DOM操作

    转自:http://www.cnblogs.com/bro-ma/p/3063942.html JQuery中的DOM操作主要对包括:建[新建].增[添加].删[删除].改[修改].查[查找][像数据 ...

  9. jQuery选择器和DOM操作——《锋利的jQuery》(第2版)读书笔记1

    第1章 认识jQuery jQuery有以下优势: 轻量级: 强大的选择器: 出色的DOM操作的封装: 可靠的事件处理机制: 完善的Ajax: 不污染顶级变量: 出色的浏览器兼容性: 链式操作方式: ...

随机推荐

  1. springboot常见 10问

    1.什么是Spring Boot? 多年来,随着新功能的增加,spring变得越来越复杂.只需访问https://spring.io/projects页面,我们就会看到可以在我们的应用程序中使用的所有 ...

  2. android 开发 框架系列 使用 FileDownloader 实现检查更新的功能class

    首先介绍一下FileDownloader GH :https://github.com/lingochamp/FileDownloader/blob/master/README-zh.md FileD ...

  3. [Unity优化]UI优化(三):GraphicRebuild

    参考链接: https://blog.csdn.net/jingangxin666/article/details/80143176 调试过程: 1.修改Image的颜色 2.Graphic.SetV ...

  4. Unable to complete the scan for annotations for web application [/wrs] due to a StackOverflowError. Possible root causes include a too low setting for -Xss and illegal cyclic inheritance dependencies.

    tomcat启动报错:Jul 20, 2018 11:48:37 AM org.apache.catalina.core.ContainerBase addChildInternalSEVERE: C ...

  5. hive 表锁和解锁

    场景: 在执行insert into或insert overwrite任务时,中途手动将程序停掉,会出现卡死情况(无法提交MapReduce),只能执行查询操作,而drop insert操作均不可操作 ...

  6. ActiveMQ(1)---初识ActiveMQ

    消息中间件的初步认识 什么是消息中间件? 消息中间件是值利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成.通过提供消息传递和消息排队模型,可以在分布式架构下扩展进 ...

  7. leetcode322

    public class Solution { public int coinChange(int[] coins, int amount) { ) ; ]; dp[] = ; ;i <= am ...

  8. python 的深浅copy

    1.引用: A=B, 修改B后,A会被修改 2.浅拷贝:A=copy.copy(B) 3.深拷贝:A=copy.deepcopy(B) 如果希望任何改变,两个对象都不会相互影响,用深拷贝.详情参考:h ...

  9. javascript隐式原型

    上图是js原型关系图. javascript是一种基于对象的编程语言,但它与一般面向对象的编程语言不同,因为它没有class类的概念 什么是原型?? 我们每创建一个函数,它就会自带一个原型函数,这个原 ...

  10. jQuery之必会增删改查Dom操作

    .next  .prev <button>change</button> <span class = '.demo'>aaa</span> <p ...