1. 程式人生 > 其它 >全選、全不選、反選功能的實現

全選、全不選、反選功能的實現

技術標籤:前端jsjavascriptcheckboxcsshtml

全選、全不選、反選

實現的功能是:
選中下面全選框,全部的框都會選中,反之就會全不選中;
當點選反選按鈕時,選擇框中的選框狀態置反,選中的變為沒選中,沒選中變為選中
直接上程式碼:
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>

效果如下:
在這裡插入圖片描述