批量选择

全选、取消选中、反选

通过DOM操作来实现全选、取消选中、反选。
封装函数的简单应用。

页面

代码如下

HTML代码

<div id="panel">
			<section class="panel-heading">
				<h2>我喜欢的歌曲</h2>
				<hr >
			</section>
			<section class="panel-content">
				<label><input type="checkbox" /></label>1.只是太爱你<br />
				<label><input type="checkbox" /></label>2.不必在乎我是谁<br />
				<label><input type="checkbox" /></label>3.为你我受冷风吹<br />
				<label><input type="checkbox" /></label>4.漂洋过海来看你<br />
				<label><input type="checkbox" /></label>5.当爱已成往事<br />
				<label><input type="checkbox" /></label>6.我终于失去了你<br />
				<label><input type="checkbox" /></label>7.爱情转移<br />
				<label><input type="checkbox" /></label>8.富士山下<br />
				<label><input type="checkbox" /></label>9.see you again<br />
				<label><input type="checkbox" /></label>10.处处吻<br />
				<label><input type="checkbox" /></label>11.飘向北方<br />
				<label><input type="checkbox" /></label>12.庆功酒<br />
				<label><input type="checkbox" /></label>13.差不多姑娘<br />
			</section>
			<section class="panel-footer">
				<hr >
				<button id="allSelect" type="button">全选</button>
				<button id="cancelSelect" type="button">取消选中</button>
				<button id="reverseSelect" type="button">反选</button>
			</section>
		</div>
*{
				margin: 0;
				padding: 0;
				list-style: none;
			}
			#panel{
				width: 400px;
				box-shadow: 0 0 10px #000000;
				margin: 100px auto;
				padding: 20px;
			}
			.panel-heading{
				text-align: center;
				margin-bottom: 10px;
			}
			.panel-footer{
				text-align: center;
				margin-top: 10px;
			}
window.onload = function(){
				//1.获取所有的复选框
				var inputs = document.querySelectorAll("input");				
				
				//2.全选
				$("allSelect").addEventListener("click",function(){
					for(var i=0;i<inputs.length;i++){
						var input = inputs[i];
						input.checked = true;
					}
				});
				//3.取消选中
				$("cancelSelect").addEventListener("click",function(){
					for(var i=0;i<inputs.length;i++){
						var input = inputs[i];
						input.checked = false;
					}
				});
				//4.反选
				$("reverseSelect").addEventListener("click",function(){
					for(var i=0;i<inputs.length;i++){
						var input = inputs[i];
						input.checked = !input.checked;
					}
				});
				
				//封装函数,获取元素的id
				function $(id){
					//需要判断id是否是string类型
					return typeof id === "string" ? document.getElementById(id)	: null;																
				}
			}	
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值