此代码是针对于bootstrap table中分页的跨页全选。

  以下是整个bootstrap的定义

  

       <script type="text/javascript" src="http://cdn.jsdelivr.net/lodash/3.8.0/lodash.min.js"></script>//一定要引用这个js不然文档加载函数中的的_[func]不会生效
     $table.bootstrapTable({
method: 'get',
url: queryUrl,
toolbar: '#toolbaruser', //工具按钮用哪个容器
height: $(window).height() - ,
striped: false, //是否显示行间隔色
pagination: true,
singleSelect: false, //是否多选
pageSize: ,
pageNumber: ,
showRefresh: true,
pageList: [],
search: false, //不显示 搜索框
// showColumns: true, //不显示下拉框(选择显示的列)
sidePagination: "server", //服务端请求
queryParams: queryParams,
showToggle: true,
clickToSelect: true,
responseHandler: responseHandler, //这里是引用的下面的responseHandler方法
// showExport: true, // exportDataType: "basic", minimunCountColumns: , columns: [{ field: 'state', checkbox: true }, { //field: 'Number',//可不加 title: '序号', //标题 可不加  formatter: function (value, row, index) { return index + ; } } , { title: '流水号', field: 'Id', sortable: true }, { field: 'UserName', title: '用户名', sortable: true }, { field: 'Number', title: '工号/学号', sortable: true }, { field: 'CreateName', title: '创建人', sortable: true }, { field: 'CreateTime', title: '创建时间', sortable: true }, { field: 'State', title: '状态', sortable: true, formatter: function (value, row) { return stateFormatter(value, row); } } ], onLoadSuccess: function () { }, onLoadError: function () { mif.showErrorMessageBox("数据加载失败!"); } });

  在文档就绪函数中添加如下代码:

            $(function () {

                $table.on('check.bs.table check-all.bs.table uncheck.bs.table uncheck-all.bs.table', function (e, rows) {
var ids = $.map(!$.isArray(rows) ? [rows] : rows, function (row) {
debugger
return row.Id; //注意这里的row.id 中的id指的是列表的主键,替换成你使用的就行了比如 studentId等
});
debugger
func = $.inArray(e.type, ['check', 'check-all']) > - ? 'union' : 'difference';
selectionIds = _[func](selectionIds, ids); });
});

  添加responseHandler方法

    此方法在bootstrap table中有定义,一定要加上

            function responseHandler(res) {
debugger
$.each(res.rows, function (i, row) { //注意这里的row.id 中的id指的是列表的主键,替换成你使用的就行了比如 studentId等
row.state = $.inArray(row.Id, selectionIds) !== -;
});
return res;
}

  下面是全选按钮以及取消全选的click事件:

    click事件的目的是获取bootstrap table中的所有数据的id

        function checkall() {
$.ajax({
//async: false,
type: "POST",
data: {
State: $("#organization").val(),
OrgCode: $("#userrole").val(),
RoleCode: $("#name").val(),
UserName: $("#number").val()
},
url: 'GetAll',
dataType: 'text',
success: function (data) { console.log(data)
selectionIds.splice(, selectionIds.length); //清空selectionIds数组
var arr = data.split(',');
console.log(arr);
for (var i = ; i < arr.length; i++) {
selectionIds.push(parseInt(arr[i]));
}
console.log(selectionIds)
query(); //query方法的目的主要是刷新表格
}
});
}

  function cancel() {

    selectionIds.splice(0, selectionIds.length); //
    console.log(selectionIds)
    query();
  }

 
       function query() {
$table.bootstrapTable('refresh');
}

  以上就是bootstraptable的跨页全选,代码没贴完,但是认真读了,是没有问题的。
  eg:此博客是本人原创,转载请注明出处。

Bootstrap table 跨页全选的更多相关文章

  1. layui table 跨页记忆选择

    layui 表格功能目前默认不支持跨页记忆选择 下面来实现layui table跨页记忆选择实现 基于layui版本 1.4.5 表格跨页通用方法 //表格分页复选框 layui.define(['j ...

  2. vue2.0实现在table中实现全选和反选

    其实在去年小颖已经写过一篇:Vue.js实现checkbox的全选和反选 小颖今天在跟着慕课网学习vue的过程中,顺便试试如何在table中实现全选和反选,页面的css样式是直接参考慕课网的样式写的, ...

  3. vue2.0在table中实现全选和反选

    其实在去年小颖已经写过一篇:Vue.js实现checkbox的全选和反选 小颖今天在跟着慕课网学习vue的过程中,顺便试试如何在table中实现全选和反选,页面的css样式是直接参考慕课网的样式写的, ...

  4. A在SP.NET跨页多选

    在ASP.NET跨页多选 本文介绍怎样在ASP.NET中实现多页面选择的问题.其详细思路非常easy:用隐藏的INPUT记住每次选择的项目,在进行数据绑定时.检查保存的值,再在DataGrid中进行选 ...

  5. Element UI表格组件技巧:如何简洁实现跨页勾选、跨页统计功能

    业务场景 在使用Element UI的Table组件时,常常面对这样的业务需求: 表格数据的每一项都要提供勾选框,当切换分页时,能够记忆所有页面勾选的数据,以实现批量提交不同页面勾选数据的功能.并且, ...

  6. bootstrap 中的 iCheck 全选反选功能的实现

    喜欢bootstrap 风格的同学应该知道,iCheck的样式还是很好看的. 官网: http://www.bootcss.com/p/icheck/ 进入正题,iCheck提供了一些方法,可以进行全 ...

  7. web跨页弹窗选值

    最近在项目中看到这样一种效果——点击当前网页文本框,然后弹出一个缩小的网页,并在网页里选择或填写数据,然后又返回当前网页,小网页关闭.感觉非常不错,其实在以前网上也看见过,只是当时没有留心.今天抽时间 ...

  8. element ui表格常用功能如:导出 新增 删除 多选 跨页多选 固定表头 多级表头 合并行列 等常见需求

    <template> <div class="table-cooperte"> <el-table :data="tableData&quo ...

  9. vue+el-table在ajax分页时支持全选单页和全选所有

    需求:el-table中,ajax分页的情况下,要支持全选单页和全选所有页中的记录,效果如下图所示: 界面代码:           <el-table :data="tableDat ...

随机推荐

  1. dorado7-HelloWorld

    1.首先在Tomat中将 Auto reloding enable去掉,去掉的目的不用每次更改代码,都要重新部署 2.创建dorado视图文件 2.1 视图文件的格式为xml 2.2 在view中添加 ...

  2. 使用MEF与Castle实现AOP

    MEF是微软的一个ioc框架,使用非常方便,我们只需要在需要导出的类上标记[Export],在需要使用的地方[import]就可以使用了.现在我们扩展MEF,在其装配生成实例时,使用Castle Dy ...

  3. 第七章 ReentrantLock总结

    常用方式: int a = 12; //注意:通常情况下,这个会设置成一个类变量,比如说Segement中的段锁与copyOnWriteArrayList中的全局锁 final ReentrantLo ...

  4. iOS App的加固保护原理

    本文由  网易云发布. 本文从攻防原理层面解析了iOS APP的安全策略.iOS以高安全性著称,但它并非金刚不坏之身.对于信息安全而言,止大风于青萍之末是上上策,杭研深入各个细节的研发工作,正是网易产 ...

  5. Systemd 服务管理器

    博文链接:http://www.cnblogs.com/zhenghongxin/p/8672199.html 项目中遇到有些脚本需要通过后台进程运行,保证不被异常中断,变成守护进程的第一步,就是把它 ...

  6. 【文文殿下】ExBSGS

    无需逆元版本: #include<cstdio> #include<cassert> #include<cmath> #include<map> typ ...

  7. 「BZOJ1095」[ZJOI2007] Hide 捉迷藏

    题目描述 Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子.某天,Jiajia.Wind和孩子们决定在家里玩捉迷藏游戏.他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条 ...

  8. ajax在php中应用实例

    1,ajax分为$.ajax(),$.get(),$.post(),$.getJSON() 几种形式,实例如下: <html> <meta http-equiv="Cont ...

  9. Java并发工具类之并发数控制神器Semaphore

    Semaphore(信号量)使用来控制通知访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源. 我们可以这么理解Semaphore,比如一个厕所只有6个坑,同时只能满足6个人上厕所( ...

  10. module.export与export的区别?

    对于大多数node初学者而言, module.exports应该都是理解的, 但多出来一个exports获取就有些疑问了 疑问一: 既然有module.exports了为什么还要有exports? 疑 ...