bootstrapTable 分页插件
前端:
@{
ViewBag.Title = "BootstrapTable 入门";
Layout = null;
}
<!-- 引入bootstrap样式 -->
<link href="https://cdn.bootcss.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
<!-- 引入bootstrap-table样式 -->
<link href="https://cdn.bootcss.com/bootstrap-table/1.11.1/bootstrap-table.min.css" rel="stylesheet">
<!-- jquery -->
<script src="https://cdn.bootcss.com/jquery/2.2.3/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<!-- bootstrap-table.min.js -->
<script src="https://cdn.bootcss.com/bootstrap-table/1.11.1/bootstrap-table.min.js"></script>
<!-- 引入中文语言包 -->
<script src="https://cdn.bootcss.com/bootstrap-table/1.11.1/locale/bootstrap-table-zh-CN.min.js"></script>
<div style="">
<div style="width:500px">
<!--定义table-->
<table id="table"></table>
</div>
<div id="toolbar" class="btn-group pull-right" style="margin-right: 20px;">
<button id="btn_edit" type="button" class="btn btn-default" style="border-radius: 0">
<span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>修改
</button>
<button id="btn_delete" type="button" class="btn btn-default" style="">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>删除
</button>
<button id="btn_add" type="button" class="btn btn-default">
<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>新增
</button>
</div>
</div>
@*<div>
<table data-toggle="table" data-url="">
<thead>
<tr>
<th data-field="Name">姓名</th>
<th data-field="Age">年龄</th>
<th data-field="Work">职业</th>
</tr>
</thead>
</table>
</div>*@
<script>
$("#table").bootstrapTable({ // 对应table标签的id
method: 'get',
url: "/Home/GetTestDataPager", // 获取表格数据的url
contentType: "application/x-www-form-urlencoded",//一种编码。好像在post请求的时候需要用到。这里用的get请求,注释掉这句话也能拿到数据
dataField: "data",//这是返回的json数组的key.默认是"rows".这里只有前后端约定好就行
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹,默认为false
pagination: true, // 在表格底部显示分页组件,默认false
pageList: [10, 20, 50, 100, 200, 500], // 如果设置了分页,设置可供选择的页面数据条数。设置为All 则显示所有记录。
pageSize: 10, // 页面数据条数
pageNumber: 1, // 初始化加载第一页,默认第一页
sidePagination: 'server', // 设置为服务器端分页 客户端:client
search: false,
toolbar: '#toolbar',//指定工具栏
searchOnEnterKey: true, //设置为 true时,按回车触发搜索方法,否则自动触发搜索方法
undefinedText: '---', //当数据为 undefined 时显示的字符
singleSelect: false,//设置True 将禁止多选
clickToSelect: true,//设置true 将在点击行时,自动选择rediobox 和 checkbox
height: 650, //定义表格的高度。
searchTimeOut: 500,// 默认500 设置搜索超时时间。
toolbarAlign: 'right',// 指定 toolbar 水平方向的位置。'left' 或 'right'
paginationDetailHAlign: 'left',//指定 分页详细信息 在水平方向的位置。'left' 或 'right'。
showHeader: true,//是否显示列头。
trimOnSearch: true,//设置为 true 将自动去掉搜索字符的前后空格。
rowStyle: function (row, index) {
var style = {
// css: { 'height': '10px', 'font-size': 'small', 'classes':'danger'}
};
return style;
},
queryParams: function (params) { // 请求服务器数据时发送的参数,可以在这里添加额外的查询参数,返回false则终止请求
return {
pageSize: params.limit, // 每页要显示的数据条数
currentPage: params.offset / params.limit + 1, // 每页显示数据的开始行号
sort: params.sort, // 要排序的字段
sortOrder: params.order, // 排序规则
//dataId: $("#dataId").val() // 额外添加的参数
// search: params.search, //搜索框内容
}
},
sortName: 'id', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
align: 'center' // 居中显示
},
{
radio: true, //设置为True的时候 则显示一列radio组件,该列的宽度为固定宽度
align: 'center' // 居中显示
},
{
field: 'Name', // 要显示数据的字段名称,可以理解为json对象里的key
title: '姓名', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
visible: true
},
{
field: 'Age',
title: '年龄',
align: 'center',
valign: 'middle'
},
{
field: 'Work',
title: '职业',
align: 'center', //设置单元格数据的左右对齐方式, 可选择的值有:’left’, ‘right’, ‘center’
valign: 'middle', //设置单元格数据的上下对齐方式, 可选择的值有:’top’, ‘middle’, ‘bottom’
formatter: function (value, row, index) { // 单元格格式化函数
//value: 该列的字段值;
//row: 这一行的数据对象;
// index: 行号,第几行,从0开始计算
var text = '-';
if (value == 1) {
text = "方式一";
} else if (value == 2) {
text = "方式二";
} else if (value == 3) {
text = "方式三";
} else if (value == 4) {
text = "方式四";
}
return value;
},
cellStyle: function (value, row, index) { // cell的样式设置,可以返回css或者classes
return {
css: { 'height': '10px', 'font-size': 'small' },
classes: 'danger'
}
},
events: function (value, row, index) {
alert(value);
}
}, {
title: "操作",
align: 'center',
valign: 'middle',
width: 160, // 定义列的宽度,单位为像素px
formatter: function (value, row, index) {
return '<button class="btn btn-primary btn-sm" onclick="del(\'' + row.Age + '\')">删除</button> <button class="btn btn-primary btn-sm" onclick="del(\'' + row.Age + '\')">删除</button>';
},
cellStyle: function (value, row, index) {
return { classes: 'danger' }
}
}
],
onLoadSuccess: function (result) { //加载成功时执行
console.info("加载成功");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
})
</scrip
后台模拟分页:
public JsonResult GetTestDataPager(int pageSize, int currentPage, string sort, string sortOrder)
{ PageEntity<ModelInfo> page = new PageEntity<ModelInfo>();
var data = GetmodelInfos().Skip((currentPage - 1) * pageSize).Take(pageSize).ToList();
page.data = data;
decimal totalPage = page.total * 1.00m / pageSize;
page.page = Convert.ToInt32(Math.Ceiling(totalPage));// page.total % pageSize > 0 ? (page.total / pageSize + 1) : (page.total / pageSize);
// 模仿分页
return Json(page, JsonRequestBehavior.AllowGet);
} private List<ModelInfo> GetmodelInfos()
{
List<ModelInfo> lst = new List<ModelInfo>();
for (int i = 0; i < 5000; i++)
{
lst.Add(new ModelInfo { Name = $"{i}_zheng", Age = i, Work = $"{i}_work" });
}
return lst; }
public class ModelInfo
{
public string Name { get; set; } public int Age { get; set; } public string Work { get; set; } } }
public class PageEntity<T> where T : class
{
public List<T> data { get; set; } public int page { get; set; } public int total { get; set; } }
}
展示:

bootstrapTable 分页插件的更多相关文章
- bootstrap-table 分页增删改查之一(增加 删除)
先上效果图 引入js文件 <!--js jquery --> <script type="text/javascript" src="${pageCon ...
- bootstrap-table 分页增删改查之一(分页)
记录一下 bootstrap-table插件的使用 先看下效果图 首先是导入js <!--js jquery --> <script type="text/javascri ...
- 结合bootstrap fileinput插件和Bootstrap-table表格插件,实现文件上传、预览、提交的导入Excel数据操作流程
1.bootstrap-fileinpu的简单介绍 在前面的随笔,我介绍了Bootstrap-table表格插件的具体项目应用过程,本篇随笔介绍另外一个Bootstrap FieInput插件的使用, ...
- bootstrap-table表格插件的使用案例
近期刚刚结束一个项目,总结一下之前做的一个后台管理系统中用到的bootstrap-table表格插件,下面是我做的一个案例(展示主要代码部分): //请求服务数据时所传参数 function quer ...
- 在Bootstrap开发框架中使用bootstrapTable表格插件和jstree树形列表插件时候,对树列表条件和查询条件的处理
在我Boostrap框架中,很多地方需要使用bootstrapTable表格插件和jstree树形列表插件来共同构建一个比较常见的查询界面,bootstrapTable表格插件主要用来实现数据的分页和 ...
- Bootstrap分页插件ajax返回数据,工具类的编写
使用Bootstrap分页插件时,需要返回指定的参数,这样Bootstrap才能够识别 需要引入的css: <!-- boostrap table --> <link href=&q ...
- Bootstrap-table表格插件的使用方法
前言 上次写了一个可拖动列表的插件,但除了这个特点没什么优点了,接下写的是我们常用的Bootstrap-table表格插件 正文 官网:https://bootstrap-table.com/ 有两个 ...
- MVC如何使用开源分页插件shenniu.pager.js
最近比较忙,前期忙公司手机端接口项目,各种开发+调试+发布现在几乎上线无问题了:虽然公司项目忙不过在期间抽空做了两件个人觉得有意义的事情,一者使用aspnetcore开发了个人线上项目(要说线上其实只 ...
- 分页插件--根据Bootstrap Paginator改写的js插件
刚刚出来实习,之前实习的公司有一个分页插件,和后端的数据字典约定好了的,基本上是看不到内部是怎么实现的,新公司是做WPF的,好像对于ASP.NET的东西不多,导师扔了一个小系统给我和另一个同事,指了两 ...
随机推荐
- 密码加密与微服务鉴权JWT
博客学习目标 1.用户注册时候,对数据库中用户的密码进行加密存储(使用 SpringSecurity). 2.使用 JWT 鉴权认证. 一.BCrypt 密码加密 1.常见的加密方式 任何应用考虑到安 ...
- JMS Activemq实战例子demo
上一篇已经讲了JMS的基本概念,这一篇来上手练一练,如果对JMS基本概念还不熟悉,欢迎参靠JMS基本概. 这篇文章所使用的代码已经不是我刚入手时的代码,已经经过我重构过的代码,便于理解,并且加了很多中 ...
- 数据中台核心方法论--OneModel为何需要产品化支撑?
什么是产品化 大部分创业公司都是从一个伟大的想法创意开始的,并且需要有一堆技术专家来实现.我们清楚,伟大的技术并不等同于和伟大的产品,技术可以解决问题,但如果它没有办法法规模化,那这些技术或者能力对用 ...
- Python基础教程(002)--编译型语音和解释器
前言 理解解释器和编译型语言,及跨平台 解释器(科普) 计算机不能直接理解任何出机器语言以外的机器语言,必须要把程序员写的程序语言进行翻译,就是编辑. 将其他语音翻译成机器语言,被称为编译器. 编译器 ...
- paper 143:人脸验证
持续更新ing,敬请期待! 参考:http://blog.csdn.net/stdcoutzyx/article/details/42091205 1. DeepID人脸识别算法 香港中文大学的团队 ...
- TopCoder - 15135 LongPalindromes
https://vjudge.net/problem/TopCoder-15135 之前做过:本质不同的回文子序列个数 本题:位置不同即为不同. 如果还是设$f[l][r]$表示$l$,$r$结尾,就 ...
- Struts1.3——DispatchAction、DynamicForm和全局跳转
1.DispatchAction-分派Action 1.1 为什么需要DispatchAction 如果每个请求都对应一个Action,就会造成action过多,程序显得比较臃肿,所以可以把一类请求写 ...
- mac、windows系统charles安装破解
一.下载 官网下载适合自己电脑的最新版本 下载地址:https://www.charlesproxy.com/latest-release/download.do 二.破解 破解地址:https:// ...
- Java DOM解析器 - 解析XML文档
使用DOM的步骤 以下是在使用DOM解析器解析文档使用的步骤. 导入XML相关的软件包. 创建DocumentBuilder 从文件或流创建一个文档 提取根元素 检查属性 检查子元素 导入XML相关的 ...
- Cocos2d-x之Scene
| 版权声明:本文为博主原创文章,未经博主允许不得转载. Scene场景也是cocos2dx中必不可少的元素,游戏中通常我们需要构建不同的场景(至少一个),游戏里关卡.版块的切换也就是一个一个场景 ...