全选、全不选、反选功能的实现

全选、全不选、反选

实现的功能是:
选中下面全选框,全部的框都会选中,反之就会全不选中;
当点击反选按钮时,选择框中的选框状态置反,选中的变为没选中,没选中变为选中
直接上代码:
index.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>全选、全不选、反选</title>
	</head>
	<body>
		<form action="">
			<p><input type="checkbox"name=""id="" />熊大</p>
			<p><input type="checkbox"name=""id="" />翠花</p>
			<p><input type="checkbox"name=""id="" />光头强</p>
			<p><input type="checkbox"name=""id="" />喜洋洋</p>
		</form>
		<button onclick="checkall(0)">全选</button>
		<button onclick="checkall(1)">全不选</button>
		<button onclick="checkall(2)">反选</button>
		<!--<script type="text/javascript">
			//选中的三个表现形式,①用户选中;②标签中的checked属性③js中checked属性为ture
			let but = document.getElementsByTagName('button');
			let inp = document.getElementsByTagName('input');
			//1.全选
			but[0].onclick = function(){
				for (let i = 0; i < inp.length; i++) {
					inp[i].checked = true;
				}				
			}
			//2.全不选
			but[1].onclick = function(){
				for (let i = 0; i < inp.length; i++) {
					inp[i].checked = false;
				}				
			}
			//3.反选
			but[2].onclick = function(){
				for (let i = 0; i < inp.length; i++) {
					inp[i].checked = !inp[i].checked;
				}				
			}			
		</script>-->
		<!--方法二: 优化代码-->
		<script type="text/javascript">			
			let but = document.getElementsByTagName('button');
			let inp = document.getElementsByTagName('input');
			function checkall(num){
				for (let i = 0; i < inp.length; i++) {
					if (num == 0) {//全选
						inp[i].checked = true;
					}
					if (num == 1) {//全不选
						inp[i].checked = false;
					}
					if (num == 2) {//反选
						inp[i].checked = !inp[i].checked;
					}
				}	
			}
		</script>
	</body>
</html>

效果如下:
在这里插入图片描述

HTML 中,可以使用 `<table>` 标签来创建表格。要实现表格的全选全不选反选功能,需要使用 JavaScript,并在 HTML 中添加相应的事件处理函数。 以下是一个示例代码,实现了表格的全选全不选反选功能: ```html <!DOCTYPE html> <html> <head> <title>Table Selection</title> <script> function selectAll() { var checkboxes = document.getElementsByTagName('input'); for (var i = 0; i < checkboxes.length; i++) { if (checkboxes[i].type == 'checkbox') { checkboxes[i].checked = true; } } } function unselectAll() { var checkboxes = document.getElementsByTagName('input'); for (var i = 0; i < checkboxes.length; i++) { if (checkboxes[i].type == 'checkbox') { checkboxes[i].checked = false; } } } function invertSelection() { var checkboxes = document.getElementsByTagName('input'); for (var i = 0; i < checkboxes.length; i++) { if (checkboxes[i].type == 'checkbox') { checkboxes[i].checked = !checkboxes[i].checked; } } } </script> </head> <body> <table> <thead> <tr> <th><input type="checkbox" onclick="selectAll()">全选</th> <th><input type="checkbox" onclick="unselectAll()">全不选</th> <th><input type="checkbox" onclick="invertSelection()">反选</th> <th>名称</th> <th>价格</th> </tr> </thead> <tbody> <tr> <td><input type="checkbox"></td> <td><input type="checkbox"></td> <td><input type="checkbox"></td> <td>商品1</td> <td>100</td> </tr> <tr> <td><input type="checkbox"></td> <td><input type="checkbox"></td> <td><input type="checkbox"></td> <td>商品2</td> <td>200</td> </tr> <tr> <td><input type="checkbox"></td> <td><input type="checkbox"></td> <td><input type="checkbox"></td> <td>商品3</td> <td>300</td> </tr> </tbody> </table> </body> </html> ``` 在上述代码中,使用了三个 JavaScript 函数分别实现全选全不选反选功能。这三个函数分别被绑定到了表格头部的三个复选框的 onclick 事件上。 其中,selectAll() 函数将所有复选框的 checked 属性设置为 true,unselectAll() 函数将所有复选框的 checked 属性设置为 false,invertSelection() 函数将所有复选框的 checked 属性取反。 在 HTML 中,使用了一个表格,其中表头的前三列分别是“全选”、“全不选”和“反选”三个复选框。在表格的 tbody 中,每一行都包含一个复选框,用来选择该行对应的商品。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值