js实现复选框全选和反选功能

本文介绍了一个简单的网页实现,包含全选和反选功能,适用于网页表单中多个复选框的选择操作。

自己做的一个简单的全选反选实现


<!DOCTYPE html>

<html>
<head>


</head>
<body>


<form>
<!--
<select id="ckall" onclick="checkall('tt1')">
<option id="ckall" onclick="checkallr('tt1')">全选</option>
<option>反选</option>
</select><br/>
-->


<input type="checkbox" id="ckall" onclick="checkall('tt1')">全选<br/>
<input type="checkbox" id="rkall" onclick="reservecheck('tt1')">反选reserve<br/>

<input type="checkbox" id="check1" name="tt1">Do you like summer?<br/>
<input type="checkbox" id="check1" name="tt1">Do you like summer?<br/>
<input type="checkbox" id="check1" name="tt1">Do you like summer?<br/>
<input type="checkbox" id="check1" name="tt1">Do you like summer?<br/>
<input type="checkbox" id="check1" name="tt1">Do you like summer?<br/>
<input type="checkbox" id="check1" name="tt1">Do you like summer?<br/>
</form>


<!--<button onclick="check()">Check Checkbox</button>-->
<button onclick="uncheck()">Uncheck Checkbox</button>

<script>
/*全选函数实现*/
function checkall(id){
var checkall = document.getElementById("ckall");
if(checkall.checked==true)akall(id);
else cancelallchecked(id);
}
/*取消全选,所有项都不选中的实现*/
function cancelallchecked(id){
cancel(id);
}

function akall(id){

var getall = document.getElementsByName(id);
if(getall.length>0){
var i=0;
for(i;i<getall.length;i++){
getall[i].checked=true;
}
}
}

function cancel(id){

var getall = document.getElementsByName(id);
if(getall.length>0){
var i=0;
for(i;i<getall.length;i++){
getall[i].checked=false;
}
}
}


function checkallr(id){
var checkall = document.getElementById("rkall");
if(checkall.checked==true)reservecheck(id);
else cancelreserve(id);
}

/*反选的实现*/
function reservecheck(id){
var getall = document.getElementsByName(id);
if(getall.length>0){
var i=0;
for(i;i<getall.length;i++){

if(getall[i].checked==true){
getall[i].checked=false;
}else{
getall[i].checked=true;
}
}
}
}



function uncheck(){
 document.getElementById("check1").checked=true;
 }
</script>


</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值