jQuery实现input框checkbox全选

jQuery 实现input框checkbox全选

点击全选或者取消全选,单击选中全部自定勾选全选

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

<div>
	<label>
		<input name="checkAll" type="checkbox">
		<span>全选</span>
	</label>
</div>

<div>
	<label>
		<input name="checkItem" type="checkbox">
		<span>1</span>
	</label>
	<label>
		<input name="checkItem" type="checkbox">
		<span>2</span>
	</label>
	<label>
		<input name="checkItem" type="checkbox">
		<span>3</span>
	</label>
</div>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script type="text/javascript">
	// 全选按钮添加改变事件
	$('input[name="checkAll"]').change(function(){
		/* 
			判断当前checked的值为true还是false
			checked=true就设置其他复选框为选中状态
			checked=false就设置其他复选框为未选中状态
		 */
		/* 
			prop是对于HTML元素本身就带有的固有属性
			attr是对于HTML元素我们自定义的加在标签中的属性
		 */
		if(this.checked){
			// 类似checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此需要使用prop方法去操作才能获得正确的结果
			$('input[name="checkItem"]').prop('checked',true)
		}else{
			$('input[name="checkItem"]').prop('checked',false)
		}
	})
	// 每个单选按钮添加改变事件
	$('input[name="checkItem"]').change(function(){
		// 初始量进行计数选中的数量
		let count = 0;
		// 遍历所有单选按钮,查看是否选中
		$('input[name="checkItem"]').each(function(){
			if(this.checked){
				count++
			}
		})
		// 获取所有单选按钮数量
		let length = $('input[name="checkItem"]').length;
		// 如果选中的数量count等于单选按钮的数量就显示全选
		if(count == length){
			$('input[name="checkAll"]').prop('checked',true)
		}else{
			$('input[name="checkAll"]').prop('checked',false)
		}
	})
</script>
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值