jquery实现全选、不选、反选的两种方法


Posted in Javascript onSeptember 06, 2016

在取复选框checkbox的属性checked属性值时,发现一个问题,就是当用attr取值时,真的为"checked",假的为"undefined";当用prop取值时,真的为"true",假的为"false"。经过网上参考一些资料,及根据官方的建议这两个用法:具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()。

方法一:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
 <meta charset="UTF-8">
 <title>全选、不选、反选 1</title>
 <script src="jquery.min.js"></script>
 <script>
 $(function(){
 $('.check .btn1').click(function(){//全选
$('.music :checkbox').prop('checked',true);
 });

 $('.check .btn2').click(function(){//全不选
$('.music :checkbox').prop('checked',false);
 });

 $('.check .btn3').click(function(){//反选
$('.music :checkbox').each(function(){
 $(this).prop('checked',!$(this).prop('checked'));
 });
 });
 });
 </script>
</head>
<body>
 <div class="music">
 <input type="checkbox" name="music1" value="小白兔">小白兔<br>
 <input type="checkbox" name="music2" value="小燕子">小燕子<br>
 <input type="checkbox" name="music3" value="哈巴狗">哈巴狗<br>
 <input type="checkbox" name="music4" value="小青蛙">小青蛙<br>
 <input type="checkbox" name="music5" value="数鸭子">数鸭子<br><br>
 </div>
 <div class="check">
 <button class="btn1">全选</button>
 <button class="btn2">全不选</button>
 <button class="btn3">反选</button>
 </div>
</body>
</html>

方法二:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
 <meta charset="UTF-8">
 <title>全部由jquery动态生成</title>
 <script src="jquery.min.js"></script>
 <script>
 function checkAll(){//全选
$(":checkbox").prop("checked",true);
 }
 function checkNo(){//全不选
$(":checkbox").prop("checked",false);
 }
 function checkRev(){//反选
$(":checkbox").each(function(){
 $(this).prop("checked",!$(this).prop("checked"));
 });
 }
 
$(function(){
 var sec=$("<div></div>").appendTo($("body"));//创建一个div追加到body里面
var input="";//创建一个空的变量
for(var i=0;i<5;i++){
 var index=i+1;
 input+="<input type='checkbox' name='标题'"+index+"value='标题'"+index+">"+"标题"+index+"<br>";
 }//把从0到4每一个创建的input收集到空变量里面
sec.append(input);//再把这些收集到的所有input追加到div里面

sec.append($("<button onclick='checkAll()'>全选</button>"));//创建全选按钮,并追加到div里面
sec.append($("<button onclick='checkNo()'>全不选</button>"));//创建全不选按钮,并追加到div里面
sec.append($("<button onclick='checkRev()'>反选</button>"));//创建反选按钮,并追加到div里面
});
 </script>
</head>
<body>
</body>
</html>

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

Javascript 相关文章推荐
web前端开发也需要日志
Dec 09 Javascript
JavaScript 变量作用域分析
Jul 04 Javascript
js修改原型的属性使用介绍
Jan 26 Javascript
js中的hasOwnProperty和isPrototypeOf方法使用实例
Jun 06 Javascript
DOM基础教程之模型中的模型节点
Jan 19 Javascript
jQuery实现textarea自动增长宽高的方法
Dec 18 Javascript
AngularJS单选框及多选框实现双向动态绑定
Jan 13 Javascript
mpvue跳转页面及注意事项
Aug 03 Javascript
详解React项目中碰到的IE问题
Mar 14 Javascript
vue获取data数据改变前后的值方法
Nov 07 Javascript
JS函数本身的作用域实例分析
Mar 16 Javascript
JQuery通过键盘控制键盘按下与松开触发事件
Aug 07 jQuery
fullpage.js全屏滚动插件使用实例
Sep 06 #Javascript
AngularJS  $on、$emit和$broadcast的使用
Sep 05 #Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
Sep 05 #Javascript
Vuejs第六篇之Vuejs与form元素实例解析
Sep 05 #Javascript
Vue表单实例代码
Sep 05 #Javascript
AngularJS实现数据列表的增加、删除和上移下移等功能实例
Sep 05 #Javascript
JS实现的手机端精简幻灯片效果
Sep 05 #Javascript
You might like
PHP分页显示制作详细讲解
2006/10/09 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
linux下实现定时执行php脚本
2015/02/13 PHP
PHP实现对数组分页处理实例详解
2017/02/07 PHP
PHP 记录访客的浏览信息方法
2018/01/29 PHP
ThinkPHP5 的简单搭建和使用详解
2018/11/15 PHP
js一组验证函数
2008/12/20 Javascript
用js的for循环获取radio选中的值
2013/10/21 Javascript
js获取当前路径的简单示例代码
2014/01/08 Javascript
对之前写的jquery分页做下升级
2014/06/19 Javascript
jquery实现页面关键词高亮显示的方法
2015/03/12 Javascript
简介JavaScript中toTimeString()方法的使用
2015/06/12 Javascript
Javascript动画效果(1)
2016/10/11 Javascript
jquery 校验中国身份证号码实例详解
2017/04/11 jQuery
js实现移动端编辑添加地址【模仿京东】
2017/04/28 Javascript
微信小程序实现皮肤功能(夜间模式)
2017/06/18 Javascript
JS实现分页浏览横向图片(类轮播)实例代码
2017/11/06 Javascript
AngularJS实时获取并显示密码的方法
2018/02/06 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
2020/09/09 Javascript
[03:31]DOTA2英雄基础教程 大地之灵
2013/12/17 DOTA
Python中atexit模块的基本使用示例
2015/07/08 Python
Python实现KNN(K-近邻)算法的示例代码
2019/03/05 Python
python实现一行输入多个值和一行输出多个值的例子
2019/07/16 Python
Python3 chardet模块查看编码格式的例子
2019/08/14 Python
python线程的几种创建方式详解
2019/08/29 Python
pytorch 中pad函数toch.nn.functional.pad()的用法
2020/01/08 Python
解决python -m pip install --upgrade pip 升级不成功问题
2020/03/05 Python
使用CSS3的ruby-position固定注音位置的用法示例
2016/07/05 HTML / CSS
css3实现多个元素依次显示效果
2017/12/12 HTML / CSS
英国顶尖手表珠宝品牌独家授权经销商:HS Johnson
2020/10/28 全球购物
家长会学生家长演讲稿
2013/12/29 职场文书
学生检讨书范文
2014/10/30 职场文书
投诉信回复范文
2015/07/03 职场文书
导游词之镇江西津古渡
2019/11/06 职场文书
一条慢SQL语句引发的改造之路
2022/03/16 MySQL