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 相关文章推荐
JavaScript 提升运行速度之循环篇 译文
Aug 15 Javascript
javascript控制在光标位置插入文字适合表情的插入
Jun 09 Javascript
JavaScript通过元素的ID和name设置样式
Jul 08 Javascript
javascript的理解及经典案例分析
May 20 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
Jul 27 Javascript
JavaScript制作颜色反转小游戏
Sep 25 Javascript
JS如何生成一个不重复的ID的函数
Dec 25 Javascript
使用JavaScript根据图片获取条形码的方法
Jul 04 Javascript
详解webpack3如何正确引用并使用jQuery库
Aug 26 jQuery
vue-router 实现导航守卫(路由卫士)的实例代码
Sep 02 Javascript
angular4+百分比进度显示插件用法示例
May 05 Javascript
vue 组件基础知识总结
Jan 26 Vue.js
简述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
把77A收信机改造成收音机
2021/03/02 无线电
同时提取多条新闻中的文本一例
2006/10/09 PHP
php mssql 分页SQL语句优化 持续影响
2009/04/26 PHP
phpmailer绑定邮箱的实现方法
2016/12/01 PHP
CI框架(CodeIgniter)操作redis的方法详解
2018/01/25 PHP
PHP微信支付结果通知与回调策略分析
2019/01/10 PHP
PHP并发场景的三种解决方案代码实例
2021/02/27 PHP
Javascript实例教程(19) 使用HoTMetal(7)
2006/12/23 Javascript
node.js中的dns.getServers方法使用说明
2014/12/08 Javascript
js实现iframe框架取值的方法(兼容IE,firefox,chrome等)
2015/11/26 Javascript
深入理解jquery自定义动画animate()
2016/05/24 Javascript
Vue官方文档梳理之全局配置
2017/11/22 Javascript
vue cli3 配置proxy代理无效的解决
2019/10/30 Javascript
vue自定义指令实现仅支持输入数字和浮点型的示例
2019/10/30 Javascript
vue element-ui实现动态面包屑导航
2019/12/23 Javascript
JS如何实现网站中PC端和手机端自动识别并跳转对应的代码
2020/01/08 Javascript
JavaScript十大取整方法实例教程
2020/12/03 Javascript
Python的IDEL增加清屏功能实例
2017/06/19 Python
Odoo中如何生成唯一不重复的序列号详解
2018/02/10 Python
对python中数据集划分函数StratifiedShuffleSplit的使用详解
2018/12/11 Python
使用Python实现Wake On Lan远程开机功能
2020/01/22 Python
Python3 集合set入门基础
2020/02/10 Python
django Model层常用验证器及自定义验证器详解
2020/07/15 Python
一款超酷的js+css3实现的3D标签云特效兼容ie7/8/9
2013/11/18 HTML / CSS
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
阿拉伯世界最大的电子商务网站:Souq沙特阿拉伯
2016/10/28 全球购物
夜班门卫岗位职责
2013/12/09 职场文书
低碳环保倡议书
2014/04/14 职场文书
公司董事长岗位职责
2014/06/08 职场文书
区域销售主管岗位职责
2014/06/15 职场文书
医生爱岗敬业演讲稿
2014/08/26 职场文书
个人授权委托书格式
2014/08/30 职场文书
学校实习推荐信
2015/03/27 职场文书
行政介绍信范文
2015/05/04 职场文书
nginx.conf配置文件结构小结
2022/04/08 Servers
Go语言入门exec的基本使用
2022/05/20 Golang