jQuery 全选与反选时出现的bug!

今天在写项目,使用jQuery1.10.2 发现一个小小的bug, 在设置checked属性时,前两次反选的时候是正常的,后面均不正确,通过调试,
准确的说应该是只有第一次是正确的,在第二次单击时,事件快完成的时候的运行的流程有点奇怪。所以自己感觉这么
成熟的框架不应该出现这个问题,于是又将1.11.1版本下载下来,也是jQuery1的最新版本测试,同样末果,问题依
然存在,使用标准的document.getElementById, 直接设置值是没有问题的。

我本人根据测试,应该是jQuery的一个bug,不知道是不是我的代码有问题。
 
代码如下:请高手请指教,非常感谢!
function unSelect(id, name) {
	var ckBoxs = document.getElementsByName(name);
	var count = 0;
	for ( var i = 0; i < ckBoxs.length; i++) {
		if (ckBoxs[i].checked == true) {
			ckBoxs[i].checked = false;
		} else {
			ckBoxs[i].checked = true;
			count ++;
		}
	}

    /*
        jQuery1.10.2 一个小小的bug, 在设置checked属性时,前两次反选的时候是正常的,后面均不正确,通过调试,准确的说应该是只有第一次是正确的,在第二次单击时,事件快完成的时候的运行的流程有点奇怪。
        所以自己感觉这么成熟的框架不应该出现这个问题,于是又将1.11.1版本下载下来,也是jQuery1的最新版本测试,同样末果,问题依然存在,使用标准的document.getElementById, 直接设置值是没有问题的。
        希望这个问题能及时解决。谢谢。
    */
	if(count == ckBoxs.length) {
	    document.getElementById(id).checked = true;
		//$("#"+id).attr("checked", true);
	} else {
	    document.getElementById(id).checked = false;
		//$("#"+id).attr("checked", false);
	}
}

jQuery 全选与反选时出现的bug!,布布扣,bubuko.com

时间: 2024-10-07 16:58:11

jQuery 全选与反选时出现的bug!的相关文章

jquery全选、反选、全不选

jquery全选.反选.全不选简单实现 Jquery代码 !function ($) { //全选 反选 全不选 $("#selAll").click(function () { $(".lists :checkbox").not(':disabled').prop("checked", true); }); $("#unSelAll").click(function () { $(".lists :checkbox

Jquery 全选、反选问题解析

最近工作中,需要使用Jquery实现复选框的全选和反选,本人虽然不是专职撸前端的,但这个小问题感觉也没什么难度,下面直接上代码: <div id="list"> <ul class="mui-table-view textOverflow" id="notesList" > <li><input type="checkbox" name="notices" valu

jQuery全选与反选,且解决点击只执行一次的问题

<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 t

jquery全选、反选、全不选代码

1.JS代码 function ($) { //全选 反选 全不选 $("#selAll").click(function () { $(".lists :checkbox").not(':disabled').prop("checked", true); }); $("#unSelAll").click(function () { $(".lists :checkbox").not(':disabled'

jquery 全选 反选 取消 批量删除

首选引入jquery 全选 //全选 function myall(){ $("input[name='d[]']").each(function(index,e){ $(this).prop('checked',true); }); } 取消 //当true改为false时为取消 // function no(){ // $("input[name='d[]']").each(function(index,e){ // $(this).prop('checked'

jQuery实现的全选、反选和不选功能

适用于网页多选后需要进行批量操作的场景(如批量删除等).如有问题希望大家可以指正.谢谢~~ HTML 我们的页面上有一个歌曲列表,列出多行歌曲名称,并匹配复选框供用户选择,并且在列表下方有一排操作按钮 <ul id="list"> <li><label><input type="checkbox" value="1"> 1.时间都去哪儿了</label></li> <l

简单的jquery全选反选案例

本demo适合刚学习jQuery的战友学习. 一个星期平均有4次晚上是吃  某荔村肠粉,所以内容就是我晚上经常点吃的那些.一般我都是吃14块钱. 效果如图: HTML代码: 1 <ul id='food'> 2 <li><input type="checkbox" value='8'>8元 红豆沙</li> 3 <li><input type="checkbox" value='5'>5元 青菜

jQuery全选反选插件的写法

jQuery全选反选插件,经易让你实现一个表单列表数据的全选与取消全选功能,内含示例,小巧实用.自动判断当前选中数量,加上全选.在没有jQuery之前,我们需要一大段js代码来实现这种效果.有了jQuery这个强大的库之后,我们可以很方便的开发实现这种效果的jQuery插件.我将它命名为jQuery.fn.check插件.前端框架分享 在构建我们的插件之前,我们想考虑一下其功能需求: 所有复选框的状态都随全选复选框的状态而发生变化:如果所有复选框都被选中时,全选复选框立即处于选中状态:如果当前选

jQuery实现全选、反选和不选功能

HTML 我们的页面上有一个歌曲列表,列出多行歌曲名称,并匹配复选框供用户选择,并且在列表下方有一排操作按钮. 1 2 3 4 5 6 7 8 9 10 11 12 13 <ul id="list">   <li><label><input type="checkbox" value="1"> 1.时间都去哪儿了</label></li>   <li><la