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. ...
随机推荐
- Java网络通信初步认知
本文转载自:http://wing011203.cnblogs.com/ 在这篇文章里,我们主要讨论如何使用Java实现网络通信,包括TCP通信.UDP通信.多播以及NIO. TCP连接 TCP的基础 ...
- C#使用ajaxForm进行上传图片
<div class='imgOuter addImgBtn l_canshu' id='ImagePath1' value=''> <img src="../Images ...
- scala在linux以及在windows的安装,以及在IDEA中新建Scala项目
一:linux下配资scala 1.上传 2.解压 3.配置环境 4.source一下 5.启动和简单使用 6.输出语句 二:scalac的使用 1.新建文件测试目录 2.新建程序 3.文件编译器书写 ...
- 【转】Ubuntu网卡配置
一.网卡地址配置Ubuntu的网络配置文件是:/etc/network/interfaces1.以DHCP 方式配置网卡 auto eth0 iface eth0 inet dhcp用sudo ...
- Struts2(四):在Action中如何访问Web资源
1.什么WEB资源? HttpServletRequest,HttpServletRespone,HttpApplication,ServletContext,HttpSession等原生Servle ...
- bootstrap入门-3.响应式原理
Bootstrap网格系统(Grid System) 响应式网格系统随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列. 1 1 1 1 1 1 1 1 1 1 1 1 4 4 4 ...
- 初识轻量级Java开源框架 --- Spring
初识轻量级Java开源框架 --- Spring 作者:egg 微博:http://weibo.com/xtfggef 出处:http://blog.csdn.net/zhangerqing spri ...
- php操作Mysql 以及封装常用的函数 用外连接连接3个表的案例
<?php header("content-type;text/html;charset=utf-8"); //数据库连接define('DB_HOST','localhos ...
- C++之路进阶——codevs2492(上帝造题的七分钟 2)
2492 上帝造题的七分钟 2 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 大师 Master 题目描述 Description XLk觉得<上帝造题的七分钟&g ...
- [转]MySQL排序原理与案例分析
这篇文章非常好,就把他转过来 前言 排序是数据库中的一个基本功能,MySQL也不例外.用户通过Order by语句即能达到将指定的结果集排序的目的,其实不仅仅是Order by语句,Grou ...