欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

表单的全选取消全选

程序员文章站 2022-05-30 13:22:46
...
<div class="wrap">
			<table border="1" cellspacing="0" cellpadding="0">
				<caption>恭喜发财</caption>
				<thead>
					<tr>
						<th><input type="checkbox" id="j_cbAll" checked="checked"/></th>
						<th>商品</th>
						<th>价钱</th>
					</tr>
				</thead>
				<tbody id="j_tb">
					<tr>
						<td>
							<input type="checkbox"/>
						</td>
						<td>苹果</td>
						<td>8000</td>
					</tr>
					<tr>
						<td>
							<input type="checkbox"/>
						</td>
						<td>华为</td>
						<td>9000</td>
					</tr>
					<tr>
						<td>
							<input type="checkbox"/>
						</td>
						<td>小米</td>
						<td>19999</td>
					</tr>
					<tr>
						<td>
							<input type="checkbox"/>
						</td>
						<td>小米+</td>
						<td>20000</td>
					</tr>
				</tbody>
			</table>
		</div>
<style type="text/css">
			table{
				width: 200px;
				margin: 50px auto;
				text-align: center;
				border-collapse: collapse; 
				/* border-collapse: collapse;  改变线性 */
				font-size: 14px;
			}
			thead tr{
				color: white;
				height: 30px;
				background-color: #63b5ef;
			}
			tbody tr{
				height: 30px;
			}
			tbody td{
				border-bottom: 1px solid #2177b5;
				font-size: 12px;
				color: #727679;
			}
			.bg{
				color: black;
				background-color: rgba(223, 189, 214,0.5);
			}
			table caption{
				font-weight: bold;
				font-size: 20px;
			}
		</style>
<script type="text/javascript">
		
		//获取相应的元素
		var j_cbAll = document.getElementById('j_cbAll');//获取thead中th的全选按钮
		var j_tbs = document.getElementById('j_tb').getElementsByTagName('input'); //获取<tbody>中td的选择按钮
		//注册点击事件
		
		//全选与不全选的制作
		j_cbAll.onclick = function(){
			//console.log(this.checked);//测试复选框是否已经选中,true选中,false没选中
			for (var i = 0; i < j_tbs.length; i++) {
				j_tbs[i].checked = this.checked; //让j_tbs中的按钮和j_cbAll的按钮属性相等
			}
		}
		//用j_cbAll的按钮去影响j_tbs中的按钮
		//设置一个变量来确定是否全部选中
		for (var i = 0; i < j_tbs.length; i++) {
			j_tbs[i].onclick = function(){
				var flag = true;
				//设置一个属性,用来控制按钮是否选中
				//每次点击后都要检查td中的按钮是否都被点中	
				for (var i = 0; i < j_tbs.length; i++) {
					if(!j_tbs[i].checked){
						// 前面添加 ! 是属于j_tbs中某个按钮没有被选中 
						flag = false;
					}
				}
			j_cbAll.checked = flag;
			}
		}
		
	</script>

实现效果:

表单的全选取消全选

相关标签: 前端网页小项目