JavaScript之全选/反选/取消,for循环闭包
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JavaScript之全选/反选/取消,for循环闭包,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2633字,纯文字阅读大概需要4分钟。
内容图文
需求:table中要求点击红色单元格和点击checkbox的效果一样,最后一行点击就是全选、反选、取消选择的效果。<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
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;
}
</style>
</head>
<body>
<table border="1" cellpadding="0" cellspacing="0">
<tr>
<td ><input type="checkbox"></td>
<td>富贵竹</td>
<td>绿萝</td>
</tr>
<tr>
<td ><input type="checkbox"></td>
<td>栀子花</td>
<td>月季</td>
</tr>
<tr>
<td ><input type="checkbox"></td>
<td>金银花</td>
<td>菊花</td>
</tr>
<tr>
<td ><input type="checkbox"></td>
<td>玫瑰</td>
<td>百合</td>
</tr>
<tr >
<td><input type="button" value="全选"> </td>
<td><input type="button" value="反选"> </td>
<td><input type="button" value="取消"> </td>
</tr>
</table>
<script>
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<check.length;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<inputcheck.length;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.onclick=function () {
for(var i=0;i<ele.length;i++){
ele[i].checked=true;
}
}
//反选
reserve.onclick=function () {
for(var i=0;i<ele.length;i++){
if(ele[i].checked){
ele[i].checked=false;
}
else {
ele[i].checked=true;
}
}
}
//取消
cancel.onclick =function () {
for(var i=0;i<ele.length;i++){
ele[i].checked=false;
}
}
</script>
</body>
</html>
原文:http://blog.51cto.com/10836356/2299834
内容总结
以上是互联网集市为您收集整理的JavaScript之全选/反选/取消,for循环闭包全部内容,希望文章能够帮你解决JavaScript之全选/反选/取消,for循环闭包所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。