table插件实现
选择、取消、全选、全部取消、获取行ids
/**
* Created by lizongqiong on 2016/1/8.
*/
var $ = require('jquery');
var table = {
init:function(ele){
this.$ele = $(ele);
this.initCheckbox();
}, /**
* checkbox 事件初始化
*/
initCheckbox:function(){
var _this = this;
_this.$ele.on('mouseup',".title-checkbox",function(e){//全选checkbox
e.preventDefault();
var o = $(this);
if(o.attr('checked')){
_this.clearSelection();
}else{
_this.selectAll();
}
});
_this.$ele.on('mouseup','.row-select',function(e){//table中checkbox
e.preventDefault();
var row = $(this);
if($(this).attr('selected')){
_this.deselect(row);
}else{
_this.select(row);
} });
},
/**
* 选中一行
* @param row:行
*/
select:function(row){
row.attr('selected',true);
$(row.find("td :checkbox").eq(0)).attr('checked','checked');
}, /**
* 反选一行
* @param row:行
*/
deselect:function(row){
row.removeAttr('selected');
$(row.find("td :checkbox").eq(0)).removeAttr('checked');
}, /**
* 清空选中行
*/
clearSelection:function(){
var _this = this;
_this.$ele.find("tr[selected]").each(function(){
_this.deselect($(this));
})
},
/**
* 全部选中
*/
selectAll:function(){
var _this = this;
_this.$ele.find('tbody tr').each(function(){
var row = $(this);
row.attr('selected',true);
$(row.find("td :checkbox").eq(0)).attr('checked','checked');
});
},
/**
* 获取选中行
* @return [tr,tr,...]
*/
getSelection:function(){
return this.$ele.find("tr[selected]");
}, /**
* 获取选中id数组
* @return [1,2,3,...]
*/
getSelectedIds:function (){
var _this = this,
rows = _this.getSelection(),
ids = [];
for(var i=0,len=rows.length;i<len;i++){
ids.push($(rows[i]).attr('rid'));
}
return ids;
}
} module.exports = table;
table插件实现的更多相关文章
- bootstrap table 插件多语言切换
在bootstrap中的bootstrap table 插件在多语言切换的审核,只需要如下操作 引入bootstrap-table-locale-all.js文件 $('#Grid').bootstr ...
- 基于jquery的json转table插件jsontotable
分享一款基于jquery的json转table插件jsontotable.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div class="container ...
- layui 框架 table插件 实现键盘快捷键 切换单元格编辑
最近使用layui的框架时,发现table插件不支持键盘快捷键切换单元格,花了点时间实现此功能. 分享给有需要的朋友们~~~ 效果图 代码: 1.支持 enter,上,下,右键 切换单元格,支持隐藏列 ...
- bootstrap table插件动态加载表头
这篇文章主要为大家详细介绍了bootstrap table插件动态加载表头,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 bootstrap的table属性已经很熟悉了,最近遇到一个问题,犹豫 ...
- 表格(table) 插件:支持当前行增行、删除。使用事件委托
最近做一个项目,需要对表格进行增行和删行. 研究了一下jquery操作dom的方法和事件委托原理,下面是我编写的例子,源码传上,欢迎高手指点. 功能: 支持在指定行下面增行: 支持删行指定行: 增行. ...
- 使用bootstrap table 插件固定表头时 表头与表格内容无法对齐
在使用bootstrap table开发后台管理系统,表格利用bootstrap-table插件来实现,使用bootstrap-table过程中,会出现表头错位的情况 表头对不齐效果: 解决的方法: ...
- Jquery Data Table插件
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- 在ASP.NET MVC中使用 Bootstrap table插件
Bootstrap table: http://bootstrap-table.wenzhixin.net.cn/zh-cn/getting-started/ 1. 控制器代码: using Syst ...
- 利用BootStrap Table插件实现自己的弹出框分页。
参考链接1: 官网:http://bootstrap-table.wenzhixin.net.cn/zh-cn/home/ 开始使用:http://bootstrap-table. ...
随机推荐
- Android MP3录音实现
给APP做语音功能,必须考虑到IOS和Android平台的通用性.wav录音质量高,文件太大,AAC和AMR格式在IOS平台却不支持,所以采用libmp3lame把AudioRecord音频流直接转换 ...
- 使用CSS将图片转换成黑白(灰色、置灰)z转
小tip: 使用CSS将图片转换成黑白(灰色.置灰) by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.c ...
- QThread
#ifndef MYTHREAD_H #define MYTHREAD_H #include<QThread> class MyThread : public QThread { Q_OB ...
- 一些小题<代码>
1.用传统方法计算一个数的二进制 1.只能计算小于2**16的数字 i = 17 num_2 = int(input("输入一个数字:").strip()) while True: ...
- 菜菜CPP日记
分支预测建议: http://www.cppblog.com/mysileng/archive/2014/09/29/208454.html #ifndef likely #define likely ...
- 【转】Linux下怎样检查、如何查看某软件包是否已经安装?
因为linux安装软件的方式比较多,所以没有一个通用的办法能查到某些软件是否安装了.总结起来就是这样几类: 1.rpm包安装的,可以用rpm -qa看到,如果要查找某软件包是否安装,用 rpm -qa ...
- 【转】HTTP 头部解释,HTTP 头部详细分析,最全HTTP头部信息
HTTP 头部解释 ========================================================================================== ...
- RDIFramework.NET ━ Web中打印的各种方案参考-欢迎补充
RDIFramework.NET ━ Web中打印的各种方案参考-欢迎补充 做Web开发的同志应该都深有体会,在web程序中打印不再象应用程序中那样便于控制了,web程序天生的一些特性造成了这个缺点, ...
- JS中同名函数有效执行顺序
html中如果出现函数同名时:如果有多个外部引入的js文件,例如a.js和b.js(引入顺序假定是a.js,然后是b.js),同时html中本身也有内部的js.那么针对 出现函数名一样的情况时,无论他 ...
- 如何拥有一个自己的Vagrant box
这是一个关于Vagrant的学习系列,包含如下文章: Vagrant入门 创建自己的Vagrant box 用Vagrant搭建Jenkins构建环境 用Vagrant和Ansible搭建持续交付平台 ...