jQuery 全选 全部选 反选 实现代码


Posted in Javascript onAugust 17, 2016

1.概述

在项目中经常遇到列表中对复选框进行勾选操作,全选。。。反选。。

2. example

<html>
<body>
<form id="test-form" action="test">
<legend>请选择想要学习的编程语言:</legend>
<fieldset>
<p><label class="selectAll"><input type="checkbox"> <span class="selectAll">全选</span><span class="deselectAll">全不选</span></label> <a href="#0" class="invertSelect">反选</a></p>
<p><label><input type="checkbox" name="lang" value="javascript"> JavaScript</label></p>
<p><label><input type="checkbox" name="lang" value="python"> Python</label></p>
<p><label><input type="checkbox" name="lang" value="ruby"> Ruby</label></p>
<p><label><input type="checkbox" name="lang" value="haskell"> Haskell</label></p>
<p><label><input type="checkbox" name="lang" value="scheme"> Scheme</label></p>
<p><button type="submit">Submit</button></p>
</fieldset>
</form>
<script src="jquery-3.1.0.js"></script>
<script type="text/javascript">
$(function(){
(function(){
var
form = $('#test-form'),
langs = form.find('[name=lang]'),
selectAll = form.find('label.selectAll :checkbox'),
selectAllLabel = form.find('label.selectAll span.selectAll'),
deselectAllLabel = form.find('label.selectAll span.deselectAll'),
invertSelect = form.find('a.invertSelect');
// 重置初始化状态:
form.find('*').show().off();
form.find(':checkbox').prop('checked', false).off();
deselectAllLabel.hide();
// 拦截form提交事件:
form.off().submit(function (e) {
e.preventDefault();
alert(form.serialize());
});
var count = 1; //点击全选/全不选框次数
selectAll.click(function(){
if(count++ %2){
selectAllLabel.hide();
deselectAllLabel.show();
$(this).prop("checked", false);
langs.prop("checked", true);
}else {
selectAllLabel.show();
deselectAllLabel.hide();
$(this).prop("checked", false);
langs.prop("checked", false);
}
});
invertSelect.on('click', function(){
langs.map(function(){
$(this).prop('checked', !this.checked);
});
});
})();
});
</script>
</body>
</html>

以上所述是小编给大家介绍的jQuery 全选 全部选 反选 实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
解决jquery的.animate()函数在IE6下的问题
Dec 03 Javascript
获取客户端网卡MAC地址和IP地址实现JS代码
Mar 17 Javascript
解析Javascript中大括号“{}”的多义性
Dec 02 Javascript
使用JavaScript的ActiveXObject对象检测应用程序是否安装的方法
Apr 15 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
Nov 12 Javascript
jQuery实现个性翻牌效果导航菜单的方法
Mar 09 Javascript
jQuery调用ajax请求的常见方法汇总
Mar 24 Javascript
javascript中caller和callee详解
Aug 10 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
Dec 06 Javascript
mpvue+vant app搭建微信小程序的方法步骤
Feb 11 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
Aug 29 Javascript
JS前端监控采集用户行为的N种姿势
Jul 23 Javascript
AngularJS 自定义指令详解及示例代码
Aug 17 #Javascript
AngularJS 依赖注入详解及示例代码
Aug 17 #Javascript
AngularJS 服务详细讲解及示例代码
Aug 17 #Javascript
深入理解jQuery layui分页控件的使用
Aug 17 #Javascript
AngularJS 作用域详解及示例代码
Aug 17 #Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
Aug 17 #Javascript
jQuery Easyui使用(二)之可折叠面板动态加载无效果的解决方法
Aug 17 #Javascript
You might like
一步一步学习PHP(2)――PHP类型
2010/02/15 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
php set_time_limit()函数的使用详解
2013/06/05 PHP
简单实用的网站PHP缓存类实例
2014/07/18 PHP
Yii 2中的load()和save()示例详解
2017/08/03 PHP
ThinkPHP中图片按比例切割的代码实例
2019/03/08 PHP
JS类定义原型方法的两种实现的区别评论很多
2007/09/12 Javascript
jquery插件之easing使用
2010/08/19 Javascript
常用一些Javascript判断函数
2012/08/14 Javascript
ExtJS4 Grid改变单元格背景颜色及Column render学习
2013/02/06 Javascript
使用jquery的ajax需要注意的地方dataType的设置
2013/08/12 Javascript
基于jquery插件实现拖拽删除图片功能
2020/08/27 Javascript
jQuery通用的全局遍历方法$.each()用法实例
2016/07/04 Javascript
JS实现焦点图轮播效果的方法详解
2016/12/19 Javascript
微信小程序 解决请求服务器手机预览请求不到数据的方法
2017/01/04 Javascript
Vue 2.5 Level E 发布了: 新功能特性一览
2017/10/24 Javascript
vue与bootstrap实现简单用户信息添加删除功能
2019/02/15 Javascript
jQuery实现获取多选框的值示例
2020/02/07 jQuery
JavaScript this关键字的深入详解
2021/01/14 Javascript
[42:48]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第二场 12.11
2020/12/16 DOTA
浅谈django model的get和filter方法的区别(必看篇)
2017/05/23 Python
Python实现获取汉字偏旁部首的方法示例【测试可用】
2018/12/18 Python
对python调用RPC接口的实例详解
2019/01/03 Python
python可视化爬虫界面之天气查询
2019/07/03 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
2021/02/02 Python
使用CSS3编写灰阶滤镜来制作黑白照片效果的方法
2016/05/09 HTML / CSS
为什么UNION ALL比UNION快
2016/03/17 面试题
银行委托书范本
2014/04/04 职场文书
领导干部失职检讨书
2015/05/05 职场文书
乡镇安全生产月活动总结
2015/05/08 职场文书
全民创业工作总结
2015/08/13 职场文书
2015团员个人年度总结
2015/11/24 职场文书
MYSQL主从数据库同步备份配置的方法
2021/05/26 MySQL
奥特曼十大神器:奥特手镯在榜,第一是贝利亚的神器
2022/03/18 日漫
MySQL数据库如何使用Shell进行连接
2022/04/12 MySQL