当遇到jQuery操作checkbox无效
来源:互联网 发布:优盘数据恢复软件 编辑:程序博客网 时间:2024/06/06 10:39
偶然间需要用到checkbox的一些功能,但是却又遇到了一些小问题,起初的代码是这样的,看着确实OK,毫无压力,只是做简单的全选与全不选的操作,当然,没有反选。问题就在这里,第一次,第二次都能用,到底三次就实在是不行了。
$("input[name='check_all']").click(function() {
if (this.checked){
$("input[name='gallery_id_checked[]']").attr("checked","true");
} else {
$("input[name='gallery_id_checked[]']").removeAttr("checked");
}
});
if (this.checked){
$("input[name='gallery_id_checked[]']").attr("checked","true");
} else {
$("input[name='gallery_id_checked[]']").removeAttr("checked");
}
});
遇到这样的问题第一时间使用F12各种断点调试,没有问题,然后查看Elements树,神奇的是checked=“checked”确实已经生成了,但是网页中就是没有内容。接下来开始查看jQuery的版本,没问题,接着看手册。顺便网上一搜问题来了。
查到这样一个方法。
prop(name|properties|key,value|fn);解释是这样的:获取在匹配的元素集中的第一个元素的属性值。随着一些内置属性的DOM元素或window对象,如果试图将删除该属性,浏览器可能会产生错误。jQuery第一次分配undefined值的属性,而忽略了浏览器生成的任何错误
所以将上面的代码改成这样就行了。
$("input[name='check_all']").click(function() {
if (this.checked){
$("input[name='gallery_id_checked[]']").attr("checked","true");
$("input[name='gallery_id_checked[]']").prop("checked",true);
} else {
$("input[name='gallery_id_checked[]']").removeAttr("checked");
$("input[name='gallery_id_checked[]']").prop("checked",false);
}
});
if (this.checked){
$("input[name='gallery_id_checked[]']").attr("checked","true");
$("input[name='gallery_id_checked[]']").prop("checked",true);
} else {
$("input[name='gallery_id_checked[]']").removeAttr("checked");
$("input[name='gallery_id_checked[]']").prop("checked",false);
}
});
阅读全文
0 0
- 当遇到jQuery操作checkbox无效
- 当ListView遇到CheckBox
- 关于jquery用checkbox模拟radio问题jquery对象操作无效
- jquery checkbox 相关操作
- jquery 操作checkbox
- JQuery操作checkbox、radio(
- JQuery操作checkbox、radio
- checkbox、radio JQuery操作
- Jquery 操作checkbox
- JQuery 操作checkbox,radion
- JQuery操作checkbox、radio
- JQuery对checkbox操作
- JQuery操作checkbox、radio
- Jquery CheckBox 相关操作
- Jquery 操作checkbox等
- jQuery操作checkbox选择
- jquery操作checkbox
- JQuery 操作checkbox select
- OpenCV学习笔记1-环境安装
- CCF 201703-2 学生排队
- 139. Subarray Sum Closest
- 1020. 月饼 (25)
- delete大量数据时正确姿势(待测试)
- 当遇到jQuery操作checkbox无效
- MATLAB中做点标注ginput
- 编程必备的最基本5种算法思想
- 机器学习工程师必知的十大算法
- 定义字符指针数组分别指向5个字符串常量,从小到大输出字符串内容
- C语言结构体(预习)
- 快递地址测试
- 笔记
- Windows无法访问Ubuntu Samba 解决方案