此代码是针对于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. 使用ABP框架踩过的坑系列3

    从架构角度来讲,ApplicationService究竟应该如何定位,一种说法是直接对应用例UseCase, 也就是直接对应UI, 这个UI是广义的,不仅仅是浏览器的页面,也包括API调用.还是从我曾 ...

  2. C#基础复习(1) 之 Struct与Class的区别

    参考资料 [1] 毛星云[<Effective C#>提炼总结] https://zhuanlan.zhihu.com/p/24553860 [2] <C# 捷径教程> [3] ...

  3. C#八大排序算法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  4. [原创] 基础中的基础(二):C/C++ 中 const 修饰符用法总结

    在这篇文章中,我总结了一些C/C++语言中的 const 修饰符的常见用法,供大家参考. const 的用法,也是技术性面试中常见的基础问题,希望能够帮大家梳理一下知识,给大家一点点帮助.作者是菜鸟一 ...

  5. Java基础学习篇---------static

    一.static的使用 1.使用static定义的属性往往通过类名直接调用,它的属性(方法)不属于某一个的对象的.所以对象没有创建之前就可以对static的属性的调用,方法亦如此. 2.static ...

  6. Python3.5 学习八 附加知识点 paramiko和rsa非对称秘钥的适用

    关于paramiko: SSH SFTP 机器上没有安装该模块,只是初步了解了下,没有细细研究. 可能以后只有做运维的才能用到的吧 利用秘钥,在ssh中不输入用户名密码进行登录 利用秘钥进行FTP操作 ...

  7. 940. Distinct Subsequences II

    Given a string S, count the number of distinct, non-empty subsequences of S . Since the result may b ...

  8. Mysql错误处理: /usr/bin/mysqld_safe: line xxx: xxxx Killed ... (mysql自动停止 Plugin FEDERATED is disabled 的完美解决方法)

    哈哈哈,问题总算解决,内心抑不住的开心 centos mysql 问题:Plugin 'FEDERATED' is disabled. /usr/sbin/mysqld: Table 'mysql.p ...

  9. JavaScript基础流程控制(3)

    day51 参考:https://www.cnblogs.com/liwenzhou/p/8004649.html for循环 while循环 三元运算 a>b条件成立,选a,不成立选b

  10. 前端入门html(标签介绍)

    day47 参考:https://www.cnblogs.com/liwenzhou/p/7988087.html # web本质 示例 import socket sk = socket.socke ...