javaScript 复选框 全选|单选|反选

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>全选|单选|反选</title>
</head>
<script>
//勾选全选框时,检查每一子项,与全选框状态不相同,则改变子项的状态
function chkAll(sonName,chkAllId){
var arrSon=document.getElementsByName(sonName);
var chkAll=document.getElementById(chkAllId);
var state=chkAll.checked;
for(var i=0;i<arrSon.length;i++){
if(arrSon[i].checked!=state){
arrSon[i].click();
}
}
}
//单选,检查单选的每一项是否都选中,若都选中,
function chkSon(sonName,chkAllId){
var arrSon=document.getElementsByName(sonName);
var chkAll=document.getElementById(chkAllId);
for(var i=0;i<arrSon.length;i++){
if(!arrSon[i].checked){
chkAll.checked=false;
return;
}
}
chkAll.checked=true;
}
//反选,让所有的子项都变成相反的状态
function chkOpp(sonName){
var arrSon=document.getElementsByName(sonName);
for(var i=0;i<arrSon.length;i++){
arrSon[i].click();
}
}
</script>


<body>
<table>
<tr><td><input type="checkbox"  id="chkAll" οnclick="chkAll('chkSon','chkAll');" /> 全选       部门</td></tr>
<tr><td><input type="checkbox" name="chkSon" οnclick="chkSon('chkSon','chkAll';)" />1        部门1</td></tr>
<tr><td><input type="checkbox" name="chkSon" οnclick="chkSon('chkSon','chkAll';)" />2        部门2</td></tr>
<tr><td><input type="checkbox" name="chkSon" οnclick="chkSon('chkSon','chkAll';)" />3        部门3</td></tr>
<tr><td><input type="checkbox"  οnclick="chkOpp('chkSon')" />反选</td></tr>
</table>
</body>
</html>


 

JavaScript和HTML中,创建一个购物车的复选框全选/单选功能可以通过以下几个步骤完成。这里是一个基本的示例: ```html <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>购物车复选框</title> <style> .cart-checks { display: flex; gap: 10px; /* 控制复选框之间的间距 */ } .check-all { margin-right: 10px; } </style> </head> <body> <h2>购物车商品选择</h2> <div class="cart-checks"> <!-- 商品项,这里的数量可以动态添加 --> <label class="checkbox" for="item1"> <input type="checkbox" id="item1" value="商品1"> 商品1 </label> <label class="checkbox" for="item2"> <input type="checkbox" id="item2" value="商品2"> 商品2 </label> <!-- 更多商品... --> <button id="checkAll">全选</button> <button id="uncheckAll">全不选</button> </div> <script> // 获取所有复选框全选按钮 const checkboxes = document.querySelectorAll('input[type="checkbox"]'); const checkAllBtn = document.getElementById('checkAll'); const uncheckAllBtn = document.getElementById('uncheckAll'); // 全选按钮事件处理 checkAllBtn.addEventListener('click', function() { checkboxes.forEach(function(checkbox) { checkbox.checked = true; }); }); // 全不选按钮事件处理 uncheckAllBtn.addEventListener('click', function() { checkboxes.forEach(function(checkbox) { checkbox.checked = false; }); }); // 当复选框状态改变时,检查是否有被选中的 checkboxes.forEach(function(checkbox) { checkbox.addEventListener('change', function() { if (checkboxes.filter(checkbox => checkbox.checked).length === checkboxes.length) { checkAllBtn.textContent = '全选'; } else { checkAllBtn.textContent = '全不选'; } }); }); </script> </body> </html> ``` 这个示例展示了如何使用JavaScript控制复选框全选和全不选操作,并且当任何一个复选框的状态变化时,会自动更新全选按钮的状态。你可以根据实际需求对商品列表和样式进行扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值