购买商品复选框全选 单选

本文介绍了如何使用JavaScript实现全选和单选复选框的功能。通过获取元素并注册点击事件,当全选复选框被选中时,所有商品复选框会同步选中;反之,如果所有商品复选框被选中,全选复选框也会自动选中。此外,还详细描述了利用循环和if语句来判断商品复选框状态的实现过程。
      <table>
				<thead>
				<tr>
					<th><input type="checkbox" id="quan"></td>
					<th>商品</td>
					<th>价格</td>
				</tr>
				</thead>
				<tbody id="xia">
				<tr>
					<td><input type="checkbox"></td>
					<td>iPad</td>
					<td>3000</td>
				</tr>
				<tr>
					<td><input type="checkbox"></td>
					<td>Mac</td>
					<td>8000</td>
				</tr>
				<tr>
					<td><input type="checkbox"></td>
					<td>iPhone</td>
					<td>8000</td>
				</tr>
			</tbody>
		</table>

HTML代码

            //获取元素
			var quans = document.getElementById('quan');
			//先获取xia这个id,然后获取到xia这个id里面所有的input
			var xias = document.getElementById('xia').getElementsByTagName('input');
			//注册点击事件
			quans.onclick = function(){
				//this.checked是当前复选框的状态
				//this当前(函数调用者)
				//checked是复选框的值,是否被选中
				for(var i = 0;i<xias.length;i++){
					//让(下面商品复选框)xias[i]=this.checked
					xias[i].checked = this.checked;
				}
			} 

思路:(1)首先,上面的全选复选框选中,下面的所有商品复选框一起选中

获取元素

注册点击事件

this.checked是当前复选框的状态

最后循环让下面的商品复选框=当前复选框的状态(被选中)

       //利用for循环给所有下面复选框注册点击事件
			for(var i = 0;i<xias.length;i++){
				//注册事件
				xias[i].onclick = function(){
					//flag控制全选按钮是否被选中
					var flag = true;
					//每次点击复选框都要循环一次看是不是三个复选框都被选择
					for(var i = 0;i<xias.length;i++){
						//xias[i].checked 代表点击后复选框被选中,但是!代表反义也就是没全选中
						if(!xias[i].checked){
							//全选按钮flag=false
							flag = false;
						}
					}
					//全选按钮等于flag等于true
					quans.checked = flag;
				}
			}

思路(2)如果下面所有商品复选框都被选中,则上面的全选复选框被选中。

利用循环给下面所有商品复选框注册点击事件

定义一个flag变量(控制全选按钮是否被选中)

再利用一个循环,每次点击下面商品复选框都要循环一次看是不是所有复选框都被选中

利用if语句 如果商品复选框有一个没被选中,则flag=false

最后全选按钮等于flag等于true,被选中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值