js复选框插件
<div class="selectList selectQgClass" id="selectQgClass">
<div class="J_selAll selDataList" style="background: #e5e5e5;">
<span class="J_check check" data-id="全部"></span>
<span class="qgClassdatas">全部</span>
</div>
<div class="selDataList">
<span class="J_check check" data-id="全部"></span>
<span class="qgClassdatas">初二物理精品班</span>
</div>
<div class="selDataList">
<span class="J_check check" data-id="青果一班"></span>
<span class="qgClassdatas"huachengj1980.com>青果一班</span>
</div>
<div class="selDataList">
<span class="J_check check" data-id="青果二班"></span>
<span class="qgClassdatas">青果二班</span>
</div>
<div class="selDataList"dasheng178.com>
<span class="J_check check" data-id="期末满分班"></span>
<span class="qgClassdatas">期末满分班</span>
</div>
<div class="selDataList">
<span class="J_check check" data-id="初一数学班"></span>
<span class="qgClassdatas">初一数学班</span>
</div>
<div class="selDataList">
<span class="J_check check" data-id="青果三班"></span>
<span class="qgClassdatas">青果三班</span>
</div>
<div class="selDataList">
<span class="J_check check" data-id="青果精品班"></span>
<span class="qgClassdatas">青果精品班</span>
</div>
<div class="bottomBtn">
<p class="j_selCancel selbtn left">取消</p>
<p class="j_selSure selbtn left">确定</p>
</div>
</div>
[javascript] view plain copy
/**
* @Author QG
* @DateTime 2018-03-29
* @desc [青果班级选择]
* @version [version]
* @param [type] ele [description]
* @return [type] [description]
*/
function selQgClass(f) {
var o = {
ele:'selectQgClass',
child:'selDataList',
cancle:function(www.2636666.cn ){},
sure:function(www.mhylpt.com/){}
}
this.f = $.extend(o, f);
this.dom = document.getElementById(o.ele);
this.single = document.getElementsByClassName(o.child);
this.cancle = this.dom.getElementsByClassName('j_selCancel');
this.sure = this.dom.getElementsByClassName('j_selSure');
this.init();
}
selQgClass.prototype = {
init:function(www.taohuayuan178.com/) {
this.handle(www.dashuju178.com );
},
chooseAll:function(flag) {
if(flag){
//全选
$(this.dom).find('.check').addClass('checked');
}else{
//取消全选
$(this.dom).find('.check').removeClass('checked');
}
},
total:function(flag) {
//统计选中个数
var len = this.single.length - 1;
var checke = this.dom.getElementsByClassName('checked');
var checkLen = flag ? checke.length-1 : checke.length;
if(checkLen < len){
$(this.single[0]).find('.check').removeClass('checked');
}else{
$(this.single[0]).find('.check').addClass('checked');
}
},
handle:function() {
var _that = this;
$(this.single).click(function(e){
G.stopPropagation(e);
var _this = $(this);
var singleCheck = _this.find('.check');
if(_this.hasClass('J_selAll')){
//全选按钮
_that.chooseAll(!singleCheck.hasClass('checked'));
}else{
//单选按钮
if(singleCheck.hasClass('checked')){
//取消选择
singleCheck.removeClass('checked');
}else{
//选择
singleCheck.addClass('checked');
}
_that.total($('.J_selAll').find('.check').hasClass('checked'))
}
})
//取消
$('.j_selCancel').click(function(){
if (_that.f.cancle && $.isFunction(_that.f.cancle)) {
_that.f.cancle.call(_that)
}
_that.chooseAll(false);
})
//确认
$('.j_selSure').click(function(){
if (_that.f.sure && $.isFunction(_that.f.sure)) {
_that.f.sure.call(_that)
}
})
}
}
[javascript] view plain copy
/**
* [sel description]
* @type 父元素selectQgClass 子元素selDataList
*/
var sel = new selQgClass({
ele:'selectQgClass',
child:'selDataList',
cancle:function(){
},
sure:function(){
var arr = [];
var checked = $(this.single);
checked.each(function(){
var checVal = $(this).find('.J_check');
if(checVal.hasClass('checked')){
arr.push(checVal.attr('data-id'))
}
});
console.log(arr)
}
});
js复选框插件的更多相关文章
- js 复选框 全选都选 如果某一个子复选框没选中 则全选按钮不选中
<!DOCTYPE HTML> <html> <head> <meta charset=UTF-8> <title>js 复选框 全选都选 ...
- js复选框全选反选
本篇文章是关于复选框的,有2种形式:1.全选.反选由2个按钮实现:2.全选.反选由一个按钮实现. <!DOCTYPE html> <html> <head> < ...
- Vue.js 复选框
demo <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <titl ...
- JS复选框选中
Web前端之复选框选中属性 熟悉web前端开发的人都知道,判断复选框是否选中是经常做的事情,判断的方法很多,但是开发过程中常常忽略了这些方法的兼容性,而是实现效果就好了.博主之前用户不少方法,经常 ...
- js复选框实现全选、全不选、反选
复选框为checkbox对象 通过input就可以将一个简单的复选框呈现在页面上 <input type="checkbox" /> 要实现的大概就是这样一个页面 思路 ...
- js复选框全选
<input name='chkAll' type='checkbox' id='chkAll' onclick='CheckAll(this.form)' value='checkbox'&g ...
- js复选框操作
$(".checkall").click(function () { if (this.checked) { $ ...
- js 复选框回显
<div class="control-group"> <label class="control-label">客户状态:</l ...
- jenkins复选框插件Extended Choice Parameter plugin
转载 https://www.cnblogs.com/zndxall/p/9512059.html https://www.cnblogs.com/jwentest/p/7113399.html
随机推荐
- 电信NB-IOT的温湿度采集器开发记录
1. 首先打开浏览器,登录电信商用服务器,上传profile文件 2. 上传编解码插件在,注意的是,上传编解码插件是电信测试用服务器平台(不同的网址),反正不明白电信搞啥幺蛾子,得两个地方去上传 3. ...
- php 批量载入文件的几种方式
方式1:spl_autoload_register // Register the autoloader. /** * Contains the functionality for auto-load ...
- 【JUC源码解析】Semaphore
简介 Semaphore(信号量),概念上讲,一个信号量持有一组许可(permits). 概述 线程可调用它的acquire()方法获取一个许可,不成功则阻塞:调用release()方法来归还一个许可 ...
- asp.net core添加全局异常处理及log4net、Nlog应用
0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 一.介绍 此篇文章将会介绍项目的全局异常收集以及采用log4net或者NLog记录. 众所周知,一旦自己的项目报错,如果没有进行处 ...
- cookie,session傻傻分不清楚?
做了这么多年测试,还是分不清什么是cookie,什么是session?很正常,很多初级开发工程师可能到现在都搞不清什么是session,cookie相对来说会简单很多. 下面这篇文章希望能够帮助大家分 ...
- windows环境下apache-apollo服务器搭建及发布订阅测试
查证了一些资料之后,发现 apache-apollo服务器使用的人还是挺多的,资料也比较齐全,所以直接选择 apache-apollo了,具体性能如何,先用起来再说吧: 1.下载 apache-apo ...
- 一、初识 Django
一.引子 Django最初设计用于具有快速开发需求的新闻类站点,目的是要实现简单快捷的网站开发! 从好的方面来看,Web 开发激动人心且富于创造性:从另一面来看,它却是份繁琐而令人生厌的工作.通过减少 ...
- Eclipse将Java项目打成jar工具包
jar包:就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性以及方法. jar包可分为可执行jar包和jar工具包,在这里, ...
- 设计模式C++实现(1)——策略(Strategy)模式
目录 策略模式 应用案例 实现的关键 Talk is cheap,let's See The Code 设计思想 参考 策略模式 策略模式定义了一系列算法和行为(也就是策略),他们可以在运行时相互替换 ...
- python-redis集合模式
无序集合SADD set集合是直接去重的,只会输出 xiao hehe sadd names3 xiao xiao hehe hehe 获取集合 names3的所有值,集合不能用切片形式获取值, ...