HTML中如何写for循环全选,JavaScript之全选/反选/取消,for循环闭包

需求:table中要求点击红色单元格和点击checkbox的效果一样,最后一行点击就是全选、反选、取消选择的效果。

6bfca20de634a2317d1417562f281e70.png

Title

table{

width: 400px;

height: 15px;

background-color: palegreen;

text-align: center;

}

.check{

width: 20%;

background-color: indianred;

}

input{

display: inline-block;

vertical-align:middle;

}

div{

display: inline-block;

width: 400px;

}

div input{

display: inline-block;

width: 20%;

}

.select{

background-color: bisque;

}

富贵竹绿萝
栀子花月季
金银花菊花
玫瑰百合

var ele= document.getElementsByTagName("input");

var check= document.getElementsByClassName("check");

var inputcheck= document.getElementsByClassName("inputcheck");

var all = document.getElementsByClassName("selectall")[0];

var reserve = document.getElementsByClassName("reserve")[0];

var cancel = document.getElementsByClassName("cancel")[0];

//for循环闭包

for(var i=0;i

var td = check[i];

td.onclick = function () {

var td = check[i];

return function () {

var input = td.getElementsByTagName("input")[0];

if(input.checked){

input.checked = false;

}else {

input.checked = true;

}

}

}(i)

}

//for循环闭包

for(var i=0;i

var input = inputcheck[i];

input.onclick = function () {

var input = inputcheck[i];

return function () {

if(input.checked){

input.checked = false;

}else {

input.checked = true;

}

}

}(i)

}

//全选

all.οnclick=function () {

for(var i=0;i

ele[i].checked=true;

}

}

//反选

reserve.οnclick=function () {

for(var i=0;i

if(ele[i].checked){

ele[i].checked=false;

}

else {

ele[i].checked=true;

}

}

}

//取消

cancel.onclick =function () {

for(var i=0;i

ele[i].checked=false;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值