JS實現全選、不選和反選效果
阿新 • • 發佈:2019-01-27
利用javascript實現全選、不選和反選效果
這個啥也不用多說,直接來程式碼,程式碼中自有註釋幫你理解
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
window.onload = function(){
// 獲取所有的按鈕
var btns = document.getElementsByTagName("button" );
// 獲取所有的選項input
var inputs = document.getElementsByTagName("input");
// 全選或者不選的時候 呼叫此函式
function fun(flag){
for (var i=0; i<inputs.length;i++) {
inputs[i].checked = flag;
}
}
//獲取第一個按鈕 “全選”
btns[0].onclick = function(){
fun(true);
}
// 獲取第二個按鈕 "不選"
btns[1].onclick = function(){
fun(false);
}
// 獲取第三個按鈕 “反選”
btns[2].onclick = function(){
// 遍歷所有的選項,判斷每一個選項是否被選中
for (var i=0;i<inputs.length;i++) {
inputs[i].checked == true ? inputs[i].checked = false : inputs[i].checked = true;
}
}
}
</script>
</head>
<body>
<div id="box1">
<button>全選</button>
<button>不選</button>
<button>反選</button>
</div>
<div id="box2">
<ul>
<li>選項1:<input type="checkbox"></li>
<li>選項2:<input type="checkbox"></li>
<li>選項3:<input type="checkbox"></li>
<li>選項4:<input type="checkbox"></li>
<li>選項5:<input type="checkbox"></li>
<li>選項6:<input type="checkbox"></li>
<li>選項7:<input type="checkbox"></li>
<li>選項8:<input type="checkbox"></li>
<li>選項9:<input type="checkbox"></li>
</ul>
</div>
</body>
</html>
效果展示
其他實現效果,自行檢視!
今天一位好友,給我指出,在反選效果中,此程式碼
inputs[i].checked = false : inputs[i].checked = true;
可以精簡為
inputs[i].checked = !inputs[i].checked;
效果還是一樣的。在這裡表示衷心的感謝。也希望看到的朋友,如果對我寫的程式碼有更好的建議,請多多賜教。我一定虛心向你學習!