Jquery全选与反选点击执行一次的解决方案


Posted in Javascript onAugust 14, 2015

代码需求, 使用attr只能执行一次,使用prop则完美实现全选和反选,获取所有选中的项并把选中项的文本组成一个字符串。

解决方案一:

代码如下:

<html>
<head>
<script src="jquery-1.11.1.min.js" type="text/javascript"></script>
</head>
<body>

<input type="checkbox" name="chk_list[]" value="1" />1

<input type="checkbox" name="chk_list[]" value="2" />2

<input type="checkbox" name="chk_list[]" value="3" />3

<input type="checkbox" name="chk_list[]" value="4" />4

<input type="checkbox" name="chk_all" id="chk_all" />全选/取消全选
<script type="text/javascript">

$("#chk_all").click(function(){
 
// 使用attr只能执行一次
 
$("input[name='chk_list[]']").attr("checked", $(this).attr("checked")); 
 
// 使用prop则完美实现全选和反选
 
$("input[name='chk_list[]']").prop("checked", $(this).prop("checked"));


// 获取所有选中的项并把选中项的文本组成一个字符串
 
var str = '';
 
$($("input[name='chk_list[]']:checked")).each(function(){
 
str += $(this).next().text() + ',';
 
});
 
alert(str);

});
</script>
</body>
</html>

总结:

对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。

对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。

参考 https://3water.com/article/62308.htm

解决方案二:

问题描述:

$(".chooseall").click(function(){
 if($(".chooseall").attr("checked") == "checked"){
$("input[name='checkbox1']").removeAttr("checked","checked");
 console.log(1);
 }else{
 $("input[name='checkbox1']").attr("checked","checked");
 console.log(2);
 }
});

上面的这个代码第一次点击和第二次点击,能实现全选和反选功能,但一遍之后就不再起作用,这是什么情况啊

Jquery全选与反选点击执行一次的解决方案

除了第一个checkbox之外,其余的都是ajax动态生成的,跟这个有关系么?console.log每次点击的都能交替输出1和2,但就是中间的代码不能执行。

解决方案:

removeAttr参数只需要一个,removeAttr("checked")
不过建议替换成

$(".chooseall").click(function(){
 if($(".chooseall").prop("checked") == true){
 $("input[name='checkbox1']").prop("checked", false);
 console.log(1);
 }else{
 $("input[name='checkbox1']").prop("checked", false);
 console.log(2);
 }
});

或者更简洁的,

$(".chooseall").click(function(){
 var isChecked = $(this).prop("checked");
 $("input[name='checkbox1']").prop("checked", isChecked);
});

以上是Jquery全选与反选点击执行一次的解决方案,希望对大家有所帮助。

Javascript 相关文章推荐
对javascript的一点点认识总结《javascript高级程序设计》读书笔记
Nov 30 Javascript
JavaScript严格模式禁用With语句的原因
Oct 20 Javascript
JavaScript实现的浮动层框架用法实例分析
Oct 10 Javascript
JavaScript焦点事件、鼠标事件和滚轮事件使用详解
Jan 15 Javascript
分享JavaScript监听全部Ajax请求事件的方法
Aug 28 Javascript
NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to
Dec 20 Javascript
angularjs实现上拉加载和下拉刷新数据功能
Jun 12 Javascript
input框中自动展示当前日期yyyy/mm/dd的实现方法
Jul 06 Javascript
详解JavaScript中操作符和表达式
Sep 12 Javascript
详解element-ui级联菜单(城市三级联动菜单)和回显问题
Oct 02 Javascript
JS实现动态无缝轮播
Jan 11 Javascript
利用js canvas实现五子棋游戏
Oct 11 Javascript
js实现Select列表各项上移和下移的方法
Aug 14 #Javascript
innerHTML中标签可以换行的方法汇总
Aug 14 #Javascript
jQuery编程中的一些核心方法简介
Aug 14 #Javascript
CSS图片响应式 垂直水平居中
Aug 14 #Javascript
js实现选中复选框文字变色的方法
Aug 14 #Javascript
avalon js实现仿微博拖动图片排序
Aug 14 #Javascript
javascript实现显示和隐藏div方法汇总
Aug 14 #Javascript
You might like
晋城吧对DiscuzX进行的前端优化要点
2010/09/05 PHP
ThinkPHP3.1新特性之内容解析输出详解
2014/06/19 PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
2017/04/04 PHP
让mayfish支持mysqli数据库驱动的实现方法
2010/05/22 Javascript
简单漂亮的js弹窗可自由拖拽且兼容大部分浏览器
2013/10/22 Javascript
node.js中的path.sep方法使用说明
2014/12/08 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
2015/09/12 Javascript
JS实现的3D拖拽翻页效果代码
2015/10/31 Javascript
对javascript继承的理解
2016/10/11 Javascript
jQuery点击头像上传并预览图片
2017/02/23 Javascript
实现微信小程序的wxml文件和wxss文件在webstrom的支持
2017/06/12 Javascript
javascript cookie的基本操作(添加和删除)
2017/07/24 Javascript
d3.js实现自定义多y轴折线图的示例代码
2018/05/30 Javascript
JS限制输入框输入的实现代码
2018/07/02 Javascript
使用微信小程序开发弹出框应用实例详解
2018/10/18 Javascript
浅探express路由和中间件的实现
2019/09/30 Javascript
vue自定义正在加载动画的例子
2019/11/14 Javascript
JavaScript遍历数组的方法代码实例
2020/01/14 Javascript
基于JQuery和DWR实现异步数据传递
2020/10/16 jQuery
[01:32]DOTA2次级联赛——首支职业女子战队选拔赛全记录
2014/10/23 DOTA
[01:36:19]Secret vs NB 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[01:08:30]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant BO3 第一场 2月28日
2021/03/11 DOTA
JavaScript中的模拟事件和自定义事件实例分析
2018/07/27 Python
python交互界面的退出方法
2019/02/16 Python
python中从for循环延申到推导式的具体使用
2019/11/29 Python
Python数据可视化:顶级绘图库plotly详解
2019/12/07 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
2019/12/11 Python
详解CSS3浏览器兼容
2016/12/14 HTML / CSS
猎人靴英国官网:Hunter Boots
2017/02/02 全球购物
美国最大的万圣节服装网站:HalloweenCostumes.com
2017/10/12 全球购物
安全资金保障制度
2014/01/23 职场文书
幼儿园秋游感想
2014/03/12 职场文书
团队精神的演讲稿
2014/05/14 职场文书
顶岗实习协议书
2015/01/29 职场文书
话题作文之自信作文
2019/11/15 职场文书