jquery复选框全选,反选,自动勾选全选框,取消勾中全选框

页面中实现全选,反选,一组复选框选中时全选按钮自动选中,一组中有一个未选中时全选按钮取消

$('#checkAll').click(function(){
			if(this.checked) {
				$("input[type=checkbox][name=ckjsmc]").each(function(){
					$(this).attr('checked', 'true');
				});
			} else {
				$("input[type=checkbox][name=ckjsmc]").each(function(){
					$(this).removeAttr('checked');
				});
			}
		});
		
	 function checkOne(){
	 	var count = 0;
		$("input[type=checkbox][name=ckjsmc]").each(function(){
			if($(this).attr('checked') != 'checked'){// 判断一组复选框是否有未选中的
				count+=1;
			}
		});
		if(count == 0) { // 如果没有未选中的那么全选框被选中
			$('#checkAll').attr('checked', 'true');
		} else {
			$('#checkAll').removeAttr('checked');
		}
	 }
这里是checkOne()是在每个复选框的onclick方法中调用的, 由于我这里的一组复选框是动态用jquery拼接车来的, 所以不能用jquery的方式$().click()来注册点击事件(经多次测试用jquery注册不得行, 点击无任何反应), 这里就必须将方法在拼接的js中使用onclick来调用方法.


此例子可以实现: 1. 选中全选框时,一组复选框被选中

      2. 反选全选框时,一组复选框都不被选中

              3. 一组复选框中都选中时, 自动勾选全选框

      4. 一组复选框中有一个未被选中时, 全选框勾去除

发布了90 篇原创文章 · 获赞 21 · 访问量 47万+

猜你喜欢

转载自blog.csdn.net/yx13649017813/article/details/41963225