js与jQuery实现checkbox复选框全选/全不选的方法


Posted in Javascript onJanuary 05, 2016

本文实例讲述了js与jQuery实现checkbox复选框全选/全不选的方法。分享给大家供大家参考,具体如下:

先来看看JavaScript实现checkbox复选框全选/全不选的方法。这应该是一个比较实用的前端技巧吧,很多时候我们都需要点击一个checkbox,然后将所有的复选框自动全部选中,比如新浪邮箱中,一些CMS系统的后台中,使用本JS效果后,会大大增强了操作体验,那么究竟是如何实现这一功能的呢?别着急,跟我一步一步实现。

我们先把那些带复选框的列表弄好,还没加全选、全不选时候的状态,大概是这样的:

<input type=checkbox name=chk>
<input type=checkbox name=chk>
<input type=checkbox name=chk>
<input type=checkbox name=chk>
<input type=checkbox name=chk>
<input type=checkbox name=chk>

然后我们在列表的旁边放一个控制checkbox的Checkbox:

全选:

<input type=checkbox onclick=sel('chk')>

下面是定义点击全选的checkBox后所要执行的JS代码,用JS遍历所有checkbox,并改变checkbox的状态:

<script language="javascript">
 function sel(a){
 o=document.getElementsByName(a)
 for(i=0;i<o.length;i++)
 o[i].checked=event.srcElement.checked
 }
</script>

下面还有一种实现JS全选、反选的功能,直接帖代码了,自己整理吧。

<input type=checkbox name=m>
<input type=checkbox name=m>
<input type=checkbox name=m>
<!--放一个控制全选的按钮-->
全选<input type="checkbox" value="1" onclick="mm(this)">
<script language=javascript>
<!--JS部分-->
function mm(o)
{
  var a = document.getElementsByName("m");
  for (var i=0;i<a.length;i++){
    a[i].checked = o.checked;
  }
}
</script>

两种方法任选一吧,都比较容易。

下面再来介绍一下jQuery实现checkbox复选框全选/全不选的方法。虽然使用JavaScript很简单就可以实现,但是代码就非常的麻烦了。

下面我来给各位朋友介绍介绍使用jQuery具体的操作方法。

jQuery.attr  获取/设置对象的属性值,如:

$("input[name='chk_list']").attr("checked"); //读取所有name为'chk_list'对象的状态(是否选中)
$("input[name='chk_list']").attr("checked",true); //设置所有name为'chk_list'对象的checked为true

再如:

$("#img_1").attr("src","test.jpg"); //设置ID为img_1的<img>src的值为'test.jpg'
$("#img_1").attr("src"); //读取ID为img_1的<img>src值

例1:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
 <meta charset="utf-8">
<script src="jquery-1.7.2.min.js"></script>
<script>
 $(document).ready(function(){
 //是否选择进行判断
 $(".btn").click(function(){
  if ($("input:checkbox:checked").length == 0)
  {
  alert('你未选择爱好');
  }
 });
 //进行反选
  $(".btn1").click(function(){
  $("input[type=checkbox]").each(function(){
  if ($(this).attr("checked"))
  {
   $(this).attr("checked",false);
  }else{
   $(this).attr("checked",true);
  }
  });
  });
  });
 </script>
 </head>
<body>
爱好:
<input type="checkbox" name="fav[]" value="read">阅读
<input type="checkbox" name="fav[]" value="music">音乐
<input type="checkbox" name="fav[]" value="sport">体育<br />
<input type="button" name="btn" class="btn" value="提交">
<input type="button" name="btn1" class="btn1" value="反选">
</body>
</html>

例2:

<script src="jquery-1.3.2.min.js"></script>
<input type="checkbox" name="checkbox_name[]" id="checkbox_name_1″ />1<br /> <input type="checkbox" name="checkbox_name[]" id="checkbox_name_2″ />2<br />
<input type="checkbox" name="checkbox_name[]" id="checkbox_name_3″ />3<br />
<input type="checkbox" name="checkbox_name[]" id="checkbox_name_4″ />4<br />
<input type="checkbox" name="checkedAll" id="checkedAll"/>全选/取消全选
<script type="text/javascript">
<!--
$(function() {
$("#checkedAll").click(function() {
if ($(this).attr("checked") == true) { // 全选
$("input[name='checkbox_name[]']").each(function() {
$(this).attr("checked", true);
});
} else { // 取消全选
$("input[name='checkbox_name[]']").each(function() {
$(this).attr("checked", false);
});
}
});
});
// -->
</script>

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

Javascript 相关文章推荐
快速保存网页中所有图片的方法
Jun 23 Javascript
JS常用字符串处理方法应用总结
May 22 Javascript
深入浅析JavaScript中对事件的三种监听方式
Sep 29 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
Jun 24 Javascript
BootStrap的table表头固定tbody滚动的实例代码
Aug 24 Javascript
layui实现table加载的示例代码
Aug 14 Javascript
微信小程序如何调用json数据接口并解析
Jun 29 Javascript
JS中的算法与数据结构之常见排序(Sort)算法详解
Aug 16 Javascript
Vue获取页面元素的相对位置的方法示例
Feb 05 Javascript
js实现选项卡效果
Mar 07 Javascript
JavaScript实现商品评价五星好评
Nov 30 Javascript
js 执行上下文和作用域的相关总结
Feb 08 Javascript
简述jQuery ajax的执行顺序
Jan 05 #Javascript
JavaScript类型系统之正则表达式
Jan 05 #Javascript
jQuery中ajax的load()与post()方法实例详解
Jan 05 #Javascript
jQuery Mobile弹出窗、弹出层知识汇总
Jan 05 #Javascript
AngularJS 使用$sce控制代码安全检查
Jan 05 #Javascript
JS常见问题之为什么点击弹出的i总是最后一个
Jan 05 #Javascript
浅谈javascript 函数表达式和函数声明的区别
Jan 05 #Javascript
You might like
php中mkdir函数用法实例分析
2014/11/15 PHP
dedecms集成财付通支付接口
2014/12/28 PHP
PHP时间处理类操作示例
2018/09/05 PHP
PHP学习记录之常用的魔术常量详解
2019/12/12 PHP
一个加密JavaScript的开源工具PACKER2.0.2
2006/11/04 Javascript
List the Codec Files on a Computer
2007/06/18 Javascript
javascript日期转换 时间戳转日期格式
2011/11/05 Javascript
改变隐藏的input中value值的方法
2014/03/19 Javascript
使用GruntJS构建Web程序之构建篇
2014/06/04 Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
2016/01/12 Javascript
layer弹窗插件操作方法详解
2017/05/19 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
在Vue项目中引入JQuery-ui插件的讲解
2019/01/27 jQuery
jQuery Ajax async=&gt;false异步改为同步时,解决导致浏览器假死的问题
2019/07/22 jQuery
JavaScript基础之this和箭头函数详析
2019/09/05 Javascript
基于axios 的responseType类型的设置方法
2019/10/29 Javascript
学习Python3 Dlib19.7进行人脸面部识别
2018/01/24 Python
Python Flask基础教程示例代码
2018/02/07 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
对python生成业务报表的实例详解
2019/02/03 Python
Python气泡提示与标签的实现
2020/04/01 Python
python实现梯度下降算法的实例详解
2020/08/17 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
html5 分层屏幕适配的方法
2018/03/16 HTML / CSS
美国的Eastbay旗下的运动款子品牌:Final-Score
2018/01/01 全球购物
数据员岗位职责
2013/11/19 职场文书
保洁主管岗位职责
2013/11/20 职场文书
中英文自我评价常用句型
2013/12/19 职场文书
手机被没收的检讨书
2014/10/04 职场文书
关于群众路线的心得体会
2014/11/05 职场文书
晚会开幕词范文
2016/03/04 职场文书
工作计划范文之财务管理
2019/08/09 职场文书
详解Flask开发技巧之异常处理
2021/06/15 Python
mysql主从复制的实现步骤
2021/10/24 MySQL
Spring JPA 增加字段执行异常问题及解决
2022/06/10 Java/Android