第十六篇 JS实现全选操作
JS实现全选
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>JS全选,复选框</title>
</head>
<body>
<table id="mytable">
<tr>
<th><input type="checkbox" id="quan"/></th>
<th>序号</th>
<th>姓名</th>
<th>性别</th>
<th>地址</th>
</tr>
<tr>
<td><input type="checkbox"/></td>
<td>1</td>
<td>张三</td>
<td>女</td>
<td>四川省成都市</td>
</tr>
<tr>
<td><input type="checkbox"/></td>
<td>2</td>
<td>李斯</td>
<td>女</td>
<td>四川省成都市</td>
</tr>
<tr>
<td><input type="checkbox"/></td>
<td>3</td>
<td>玩玩玩</td>
<td>男</td>
<td>四川省成都市</td>
</tr>
<tr>
<td><input type="checkbox"/></td>
<td>4</td>
<td>哈哈哈</td>
<td>女</td>
<td>四川省成都市</td>
</tr>
</table>
<script>
// onload事件 页面加载完直接运行
window.onload = function () {
var mytable = document.getElementById("mytable");
var qq = document.getElementById("quan");
mytable.style.border = "1px solid gray";
mytable.style.borderCollapse = "collapse";
mytable.style.textAlign = "center";
mytable.style.width = "800px";
//以上是给table表格添加样式
//使用循环获取到表格的tr长度
for (i = 1; i < mytable.rows.length; i++) {
//因为复选框是tr里的第一个,所以cells里的数组下标为0
mytable.rows[i].cells[0].firstChild.onclick = function () {
//当我点击它,就做判断
//先判断它本身是被选中的就往下面走
if (this.checked) {
//如果它被选中我们就走进for循环
for (j = 1; j < mytable.rows.length; j++) {
//获取tr的长度,然后判断所有的复选框
if (!mytable.rows[j].cells[0].firstChild.checked) {
//如果这些复选框,有一个没有被选中,全选就变成未被选中
qq.checked = false;
return true;
//最后结束返回 true
}
}
//if判断,所有复选框都是选中的,就让全选变成true 变成选中
qq.checked=true;
}
else {
//如果它本身没有被选中,全选当然是变成false 未被选中
qq.checked = false;
}
}
}
//点击全选的复选框,将所有的复选框变成和它一样,要么选中,要么未选中
qq.onclick=function() {
for (i = 1; i < mytable.rows.length; i++) {
mytable.rows[i].cells[0].firstChild.checked = this.checked;
}
};
//以下是循环并判断表格里的tr和td,添加css样式
for (i = 0; i < mytable.rows.length; i++) {
if (i == 0) {
mytable.rows[0].style.backgroundColor = "lightgray";
} else {
mytable.rows[i].onmouseover = function () {
this.style.backgroundColor = "red";
};
mytable.rows[i].style.cursor = "pointer";
if (i % 2 == 0) {
mytable.rows[i].style.backgroundColor = "yellow";
mytable.rows[i].onmouseout = function () {
this.style.backgroundColor = "yellow";
}
} else {
mytable.rows[i].style.backgroundColor = "orange";
mytable.rows[i].onmouseout = function () {
this.style.backgroundColor = "orange";
}
}
}
for (j = 0; j < mytable.rows[i].cells.length; j++) {
var c = mytable.rows[i].cells[j];
c.style.border = "1px solid gray";
}
}
}
</script>
</body>
</html>
第十六篇 JS实现全选操作的更多相关文章
- 利用js写全选操作
<script type="text/javascript"> function checkall(qx) { var ck=document.getElementsB ...
- Python之路【第十六篇】:Django【基础篇】
Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...
- 跟我学SpringCloud | 第十六篇:微服务利剑之APM平台(二)Pinpoint
目录 SpringCloud系列教程 | 第十六篇:微服务利剑之APM平台(二)Pinpoint 1. Pinpoint概述 2. Pinpoint主要特性 3. Pinpoint优势 4. Pinp ...
- Egret入门学习日记 --- 第十六篇(书中 6.10~7.3节 内容)
第十六篇(书中 6.10~7.3节 内容) 昨天搞定了6.9节,今天就从6.10节开始. 其实这个蛮简单的. 这是程序员模式. 这是设计师模式. 至此,6.10节 完毕. 开始 6.11节. 有点没营 ...
- 解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译)
解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译) http://improve.dk/orcamdf-rawdatabase-a-swiss-a ...
- JS checkbox 全选 全不选
/* JS checkbox 全选 全不选 Html中checkbox: <input type="checkbox" name="cbx" value= ...
- JS实现全选、反选、不选
JS实现全选.反选.不选 效果图: 代码如下,复制即可使用: <!DOCTYPE html> <html> <head> <meta charset=&quo ...
- elementUI+JS实现全选与反选
在实际项目开发过程中,遇到的需求,需要实现全选以及取消全选等功能,主要使用ElementUI + JS来实现,具体代码如下: <!DOCTYPE html> <html lang=& ...
- JS实战 · 复选框全选操作
思路: 1.获取被选中checkbox,通过checked属性的状态完成: 2.获取被选中的checkbox的value值: 3.求所有value的和sum: 4.定义span区域存储和sum: ...
随机推荐
- leetcode 207课程表
class Solution { public: bool canFinish(int numCourses, vector<vector<int>>& prerequ ...
- BFC是什么?有什么作用?
BFC(Block Formatting Context)直译为“块级格式化范围”. 一.常见定位方案 在讲 BFC 之前,我们先来了解一下常见的定位方案,定位方案是控制元素的布局,有三种常见方案: ...
- liunx服务器在本地可以访问但是外网访问不了
版权声明:本文为CSDN博主「tlytg456」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/tlytg/ar ...
- 阶段3 3.SpringMVC·_06.异常处理及拦截器_5 SpringMVC拦截器之编写controller
先新建包,com.itcast.controller,然后把异常拦截的项目的UserController复制过来. 复制过来稍作修改 创建pages文件件,然后新建success.jsp页面 部署当前 ...
- 如何使用Pythonapi函数写股票策略
如何使用Python api 函数写股票策略 写策略需要了解的语法包括两方面,一方面是语言本身的语法(包括相关库),另一方面是量化平台提供的api.量化平台提供的api帮助文件里都有了,本文主要介绍写 ...
- C基础知识(7):字符串
在C语言中,字符串实际上是使用null字符'\0' 终止的一维字符数组.因此,一个以null结尾的字符串,包含了组成字符串的字符. C编译器会在初始化数组时,自动把'\0'放在字符串的末尾.所以不需要 ...
- django实现利用mailgun进行收发邮件
django窗口类运用和邮件收发 运用django窗口类来完成表单html 1 具体你看网址: https://www.cnblogs.com/guguobao/p/9322027.html 利用窗口 ...
- XCTF (app2)
打开app,有两个输入框和一个按钮.点击按钮会跳转到新的页面显示Waiting for you. 打开JEB反编译. 如果两个输入框的长度都不为0,那么获取这两个值到v0和v1中,Log记录日志. 创 ...
- MaxScale中间件部署数据库读写分离
操作系统:CentOS7 (Core) 数据库:MariaDB-10.2.6-linux-glibc_214-x86_64 MaxScale服务器:192.168.40.134 主服务器:192.16 ...
- caoz的梦呓:信息安全攻防杂谈
猫宁!!! 参考链接:https://mp.weixin.qq.com/s/O0zLvuWPRPIeqnRooNEFYA 旧文我提过一句话,信息安全防御这事,在业内,三分靠技术,七分靠人脉. 在知识星 ...