複選框全選和選不選,獲取選中值
阿新 • • 發佈:2021-01-06
複選框全選和選不選,獲取選中值。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Demo</title>
</head>
<body>
<div id="div1">
<input type="checkbox" id="chkAll" name ="chkAll" onclick="chkAll_onclick(this)" />全選<br />
<input type="checkbox" id="chk1" name="chk" value='1' onclick="chk_onclick(this)" />選項1<br />
<input type="checkbox" id="chk2" name="chk" value='2' onclick="chk_onclick(this)" />選項2<br />
<input type="checkbox" id="chk3" name="chk" value='3' onclick="chk_onclick(this)" />選項3<br />
<input type="checkbox" id="chk4" name="chk" value=' 4' onclick="chk_onclick(this)" />選項4<br />
<input type="checkbox" id="chk5" name="chk" value='5' onclick="chk_onclick(this)" />選項5<br />
</div>
<a href="javascript:void(0);" onclick="foo();"><button>確認</button></a>
</body>
</html>
<script>
function chkAll_onclick(obj) {
var chks = document.getElementsByName("chk");
for (var i = 0; i < chks.length; i++) {
chks[i].checked = obj.checked;
}
}
function chk_onclick(obj) {
var chks = document.getElementsByName("chk");
var chkAll = document.getElementsByName("chkAll");
if (obj.checked == false)
chkAll[0].checked = false;
else {
var j = 1;
for (var i = 0; i < chks.length; i++) {
if (chks[i].checked == false) {
j = 2;
break;
}
}
if (j == 1)
chkAll[0].checked = true;
}
}
function foo() {
obj = document.getElementsByName("chk");
check_val = [];
for (k in obj) {
if (obj[k].checked)
check_val.push(obj[k].value);
}
alert(check_val);
}
</script>