jQuery 全选 全部选 反选 实现代码
更新时间:2016年08月17日 16:57:36 作者:fangfan
上次做了一个前端项目,其中有功能要求实现jquery 全选和反选功能,下面小编抽个时间把实现代码分享到脚本之家平台供大家参考下
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 全选 全部选 反选 实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
jQuery UI Dialog控件中的表单无法正常提交的解决方法
研究了页面源码后发现,jQuery UI Dialog控件初始化时动态生成的HTML元素被添加到页面的尾部、form元素的后面,而原始的Dialog模板部分(其内包含表单元素)也被移到了 动态生成的HTML元素内。2010-12-12Ext.get() 和 Ext.query()组合使用实现最灵活的取元素方式
想要利用ExtJS的库函数对DOM进行各类操作,就要得到Element类型的对象,但是Ext.get()取到的虽然是Element,但是参数只能是id,如果大家对jQuery的selector方式很喜欢和崇拜,那么就一定要学习Ext.get()和Ext.query()的组合方式。2011-09-09jquery.combobox中文api和例子,修复了上面的小bug
关于jquery.combobox,这个jquery的插件从官网上直接下载下来使用还有bug,以下是我对其api做的简单翻译,而且修复了上面的bug。2011-03-03
最新评论