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 相关文章推荐
js类中获取外部函数名的方法与代码
Sep 12 Javascript
用JavaScript实现单继承和多继承的简单方法
Mar 29 Javascript
基于jquery实现动态竖向柱状条特效
Feb 12 Javascript
JavaScript判断用户名和密码不能为空的实现代码
May 16 Javascript
JavaScript蒙板(model)功能的简单实现代码
Aug 04 Javascript
在JSP中如何实现MD5加密的方法
Nov 02 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
Dec 26 Javascript
jQuery图片查看插件Magnify开发详解
Dec 25 jQuery
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
May 13 jQuery
使用Angular9和TypeScript开发RPG游戏的方法
Mar 25 Javascript
vue使用map代替Aarry数组循环遍历的方法
Apr 30 Javascript
vue3.0自定义指令(drectives)知识点总结
Dec 27 Vue.js
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写的serv-u的web申请账号的程序
2006/10/09 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
php 使用fopen函数创建、打开文件详解及实例代码
2016/09/24 PHP
PHP7扩展开发教程之Hello World实现方法示例
2017/08/03 PHP
NodeJS的模块写法入门(实例代码)
2012/03/07 NodeJs
浅析JS刷新框架中的其他页面 &amp;&amp; JS刷新窗口方法汇总
2013/07/08 Javascript
JS实现随机化快速排序的实例代码
2013/08/01 Javascript
getJSON调用后台json数据时函数被调用两次的原因猜想
2013/09/29 Javascript
js树插件zTree获取所有选中节点数据的方法
2015/01/28 Javascript
javascript实现拖放效果
2015/12/16 Javascript
浅谈React 属性和状态的一些总结
2016/11/21 Javascript
详解JavaScript调用栈、尾递归和手动优化
2017/06/03 Javascript
React Native之TextInput组件解析示例
2017/08/22 Javascript
Three.js基础学习之场景对象
2017/09/27 Javascript
jQuery 实现左右两侧菜单添加、移除功能
2018/01/02 jQuery
解决vue router组件状态刷新消失的问题
2018/08/01 Javascript
手淘flexible.js框架使用和源代码讲解小结
2018/10/15 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
JS实现深度优先搜索求解两点间最短路径
2019/01/17 Javascript
jquery将json转为数据字典的实例代码
2019/10/11 jQuery
python中dir函数用法分析
2015/04/17 Python
TensorFlow saver指定变量的存取
2018/03/10 Python
python实现人脸识别经典算法(一) 特征脸法
2018/03/13 Python
在Python中构建增广矩阵的实现方法
2019/07/01 Python
Python 计算任意两向量之间的夹角方法
2019/07/05 Python
如何基于Python实现自动扫雷
2020/01/06 Python
Python列表list操作相关知识小结
2020/01/29 Python
亚马逊西班牙购物网站:amazon西班牙
2017/03/06 全球购物
美国领先的奢侈手表在线零售商:WatchMaxx
2017/12/17 全球购物
德国旅行、体验和活动的预订平台:Watado
2019/12/04 全球购物
单位消防安全制度
2014/01/12 职场文书
大四学生找工作的自荐信
2014/03/27 职场文书
优秀教师单行材料
2014/12/16 职场文书
党员理论学习心得体会
2016/01/21 职场文书
2019财务管理制度最新范本!
2019/07/09 职场文书
详解Vue项目的打包方式(生成dist文件)
2022/01/18 Vue.js