jq实现多选框及反选
1 效果图
2 html
<div class="main">
<table>
<tr>
<th><input type="checkbox" id="checkAll" name="checkAll"/><label>全选</label><label>
<a href="#" id="checkNo">反选</a>
</label></th>
</tr>
<tr>
<td><input type="checkbox" name="item" /><label>选项1</label></td>
</tr>
<tr>
<td><input type="checkbox" name="item" /><label>选项2</label></td>
</tr>
<tr>
<td><input type="checkbox" name="item" /><label>选项3</label></td>
</tr>
<tr>
<td><input type="checkbox" name="item" /><label>选项4</label></td>
</tr>
<tr>
<td><input type="checkbox" name="item" /><label>选项5</label></td>
</tr><tr>
<td><input type="checkbox" name="item" /><label>选项6</label></td>
</tr>
</table>
</div>
3 css
.main{
height:200px;
background-color:#CDCDC1;
font-size:15px;
font-family:"微软雅黑";
}
4 jq
$(document).ready(function(){
//判断子元素是否全选
var length = $("input[name='item']").length;
function isCheckAll(){
var count = 0;
for(let i =0;i<length;i++){
if($("input[name='item']").eq(i).prop('checked')){
count++;
}
}
if(count == length){$("input[name='checkAll']").eq(0).prop('checked',true);}else{
$("input[name='checkAll']").eq(0).prop('checked',false);
}
}
//全选
$("input[name='checkAll']").click(function(){
var _this_ = $(this);
$("input[name='item']").prop('checked',_this_.prop('checked'));
})
//反选
$("#checkNo").click(function(){
$("input[name='item']").each(function(){
$(this).prop('checked',!$(this).prop('checked'));
});
isCheckAll();
})
//为每一个选项绑定一个判断全选le
for(let i=0;i<length;i++){
$("input[name='item']").eq(i).click(function(){
isCheckAll();
})
}
});
5 总结
.prop(); //可以用来获取属性值,也可以用来设置属性值,与.attr()类似
.each();//为选中的对象集合的元素遍历一遍处理函数
.length;//获取选中对象的个数
6 补充 js实现 2019/10/16,思路不变,只是用原生的js实现
window.onload = function(){
var oCheckAll = document.getElementsByName('checkAll');
var oCheckNo = document.getElementById('checkNo');
var oItem = document.getElementsByName('item');
var length = oItem.length;
console.log(length);
console.log(oItem);
function isCheckedAll(){
let count = 0;
for(let i =0;i<length;i++){
if(oItem[i].checked == true){
count++;
}
}
if(count == length){
oCheckAll[0].checked = true ;
}else{
oCheckAll[0].checked = false ;
}
}
oCheckAll[0].onclick = function(){
console.log(1);
for(let i=0;i<length;i++){
oItem[i].checked = true;
}
}
oCheckNo.onclick = function(){
console.log(2);
for(let i=0;i<length;i++){
var flag = oItem[i].checked;
oItem[i].checked = !flag;
}
isCheckedAll()
}
for(let i =0;i<length;i++){
oItem[i].onclick = function(){
isCheckedAll();
}
} }
jq实现多选框及反选的更多相关文章
- JQ实现复选框的全选反选不选
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jQuery学习(五)——使用JQ完成复选框的全选和全不选
1.在系统后台进行人员管理时,进行批量删除,使用jq完成全选和全不选 步骤分析: 第一步:引入jquery文件 第二步:书写页面加载函数 第三步:为上面的复选框绑定单击事件 第四步:将下面所有的复选框 ...
- JQ判断复选框是否选中
方法一: if($('#checkbox').is(':checked')) {} 方法二:if ($('#checkbox').attr('checked')) {} 方法三:if ($(" ...
- jq判断 复选框是否被选中 亲测可用
var shortName = $('#shortName').is(':checked')?1:0;
- jq 禁用复选框 和输入框
$('input').attr("readonly", ""); $('input').attr("disabled", "fal ...
- 工作需求----表单多选框checkbox交互
关于多选框,反选及选取几个: 1.html内容 <!--begin checkbox--> <div class="c_n_manage_tablexx"> ...
- JQuery实现列表中复选框全选反选功能封装
我们在做列表的时候经常会遇到全选,反选进行批量处理问题,例如: 我当时就是简单的实现了,然后想封装到公共的js中,封装的太烂,不好意思贴出来了(就是把实现代码之间放到公共js中,然后每个页面都用固定的 ...
- 转发!HTML 复选框 checkbox 的 JavaScript 的全选和全反选
checkbox 或者按钮实现 form 内的 checkbox 全选或者反选,代码很简单,全部代码如下: <html> <head> <meta http-equiv= ...
- 关于通过jq /js 实现验证单选框 复选框是否都有被选中
今天项目中遇到一个问题 就是要实现,单选框,复选框 同时都被选中才能进行下一步的问题,开始用js原生来写 怎么写都觉得不合适,通过for循环得出 复选框被选中的,在通过for循环得出单选框被选中的,问 ...
随机推荐
- Ubuntu部署Tomcat Web服务
在Ubuntu平台中安装TomCat 本文将为大家介绍TomCat在Ubuntu平台中如何进行部署使用,带你快速入门使用TomCat TomCat简介 Tomcat是Apache 软件基金会(Apac ...
- k8s中负载均衡器【ingress-nginx】部署
在Kubernetes中,服务和Pod的IP地址仅可以在集群网络内部使用,对于集群外的应用是不可见的.为了使外部的应用能够访问集群内的服务,在Kubernetes 目前 提供了以下几种方案: Node ...
- xtrabackup 备份+还原
1.安装下载地址:https://www.percona.com/downloads/Percona-XtraBackup-LATEST/ 2.备份# innobackupex --defaults- ...
- 6个Linux运维典型问题,看大牛的分析解决思路
问题1:文件系统破坏导致系统无法启动 Checking root filesystem /dev/sda6 contains a file system with errors, check forc ...
- JavaScript正则表达式之语法
Regular Expressions翻译成中文叫正则表达式.也不知道是谁翻译过来的,听起来就很严肃.似乎翻译成通用表达式更能传达其精髓. 为什么叫通用表达式?因为它有一套和编程语言无关的文本匹配规则 ...
- CSS中重要的BFC
CSS中有个重要的概念BFC,搞懂BFC可以让我们理解CSS中某些原本看似诡异的地方. 简介 在解释BFC之前,先说一下文档流.我们常说的文档流其实分为定位流.浮动流.普通流三种.而普通流其实就是指B ...
- [BZOJ2392][HAOI2011]Problem c
Description 给n个人安排座位,先给每个人一个1~n的编号,设第i个人的编号为ai(不同人的编号可以相同),接着从第一个人开始,大家依次入座,第i个人来了以后尝试坐到ai,如果ai被占据了, ...
- Cocos2d-x 学习笔记(15.1) EventDispatcher
EventDispatcher对监听器进行管理,围绕着监听器工作.可以添加.删除.暂停/恢复监听器.分发事件到监听器. 1. 一些成员 /** 把ListenerID和同ID监听器的容器对应 */ s ...
- 记因git规范导致的提测和发布延迟
号外 最近因为换工作的原因,我的博客和Github没有像之前那样频繁的更新了.一方面原因是投递简历和准备面试,由于之前的基础没有很扎实,需要把平时的知识点都整理一遍.这个时间段持续了20多天的样子,因 ...
- 百万年薪python之路 -- RBAC角色权限设计
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成"用 ...