Bootstrap表格分页(二)
本文使用Bootstrap-table来对表格进行分页,关于Bootstrap-table以及下载插件包请点击官网:http://bootstrap-table.wenzhixin.net.cn
首先,需要引用脚本:bootstrap-table.js
或bootstrap-table.min.js,以及bootstrap-table-zh-CN.js
HTML页面内容如下:
<table data-toggle="table" data-url="/Home/GetPaginationData2" data-height="465"
data-side-pagination="server" data-pagination="true" data-page-list="[5,10,20,50]">
<thead>
<tr>
<th data-field="BusNo" data-align="center">乘车码</th>
<th data-field="OrderId" data-align="center">订单号</th>
<th data-field="OrderDate" data-align="center" data-formatter="FormatDateTime">订单日期</th>
</tr>
</thead>
</table>
data-toggle="table" 标记这是一个表格,并引用插件里的功能,data-pagination="true" 表示对表格进行分页,并会调出分页栏,data-side-pagination="server" 标记这是从后台进行分页,data-page-list="[5,10,20,50]"表示每页可以显示5,10,20,50条记录可选,列中的data-field绑定返回的数据属性。data-url 表示使用URL的方式定位到数据,本文从后台获得JSON格式的数据。返回的JSON中有两个数据“rows”和“total”,“rows”是表格中的已在服务器端分页的数据,“total”是数据记录总数,前端插件会根据“total”计算出总的页面数。后台代码如下:
public JsonResult GetPaginationData2()
{
var offset = Request.Params["offset"] == null ? : int.Parse(Request.Params["offset"]);
var limit = Request.Params["limit"] == null ? : int.Parse(Request.Params["limit"]); using (var context = new TestEntities())
{
int count;
var q = (from a in context.Tickets
join b in context.Order on a.OrderId equals b.Id
select new
{
BusNo = a.BusNumber,
OrderId = b.Id,
OrderDate = b.OrderDateTime,
}).Pagination(offset, limit, out count);
var data = q.ToList();
return Json(new {rows = data, total = count}, JsonRequestBehavior.AllowGet);
}
}
上面的Pagination函数请参考我的另外一篇博文:http://www.cnblogs.com/ChrisLee2011/p/4286069.html
由于之前使用过EasyUI,所以习惯以数据绑定的方式获取后台数据,而且Bootstrap-table获取数据的方式也是多样的,更详细的使用请参考官网。
提示:Bootstrap-table目前有一个缺陷,当resize浏览器窗口的时候,表的head不能自适应,解决的方法是在bootstrap-table.js的源码中的页面初始化处添加如下代码:
$(function () {
$('[data-toggle="table"]').bootstrapTable(); //添加如下代码
$(window).resize(function () {
$('[data-toggle="table"]').bootstrapTable('resetView');
});
});
Bootstrap表格分页(二)的更多相关文章
- Bootstrap表格分页(一)
最近在学习Bootstrap的分页,有一种方法用“Bootstrap-Paginator”的东西来做. 先预览一下: 为了能够局部刷新页面,我创建了一个PartialView 页面的HTML部分如下: ...
- bootstrap表格分页
<script src="~/Scripts/jquery.min.js"></script> <script src="~/Scripts ...
- JS组件系列——表格组件神器:bootstrap table(二:父子表和行列调序)
前言:上篇 JS组件系列——表格组件神器:bootstrap table 简单介绍了下Bootstrap Table的基础用法,没想到讨论还挺热烈的.有园友在评论中提到了父子表的用法,今天就结合Boo ...
- Angular.js+Bootstrap实现表格分页
最近一直学习Angular.js,在学习过程中也练习了很多的Demo,这里先贴一下表格+分页. 先上图看看最终结果: 不得不说Angular.js代码风格很受人欢迎,几十行代码清晰简洁的实现了上面的功 ...
- bootstrap table + spring + springmvc + mybatis 实现从前端到后端的表格分页
1.使用准备 前台需要的资源文件,主要有Bootstrap3相关css.js以及bootstrap Table相关css.js: <-- 样式 --> <link rel=" ...
- 如何用angularjs制作一个完整的表格之二__表格分页功能
接上一次,这次主要介绍表格分页功能,由于项目需要这个案例是关于前端分页的方式,现在很少会这么用了,但如有需要可以参考其中的思路 html: 1.通过UL来展示页标,其中每个页标的li是通过异步加载从获 ...
- Bootstrap <基础十二>下拉菜单(Dropdowns)
Bootstrap 下拉菜单.下拉菜单是可切换的,是以列表格式显示链接的上下文菜单.这可以通过与 下拉菜单(Dropdown) JavaScript 插件 的互动来实现. 如需使用下列菜单,只需要在 ...
- bootstrap table分页(前后端两种方式实现)
bootstrap table分页的两种方式: 前端分页:一次性从数据库查询所有的数据,在前端进行分页(数据量小的时候或者逻辑处理不复杂的话可以使用前端分页) 服务器分页:每次只查询当前页面加载所需要 ...
- 基于Vue.js的表格分页组件
有一段时间没更新文章了,主要是因为自己一直在忙着学习新的东西而忘记分享了,实在惭愧. 这不,大半夜发文更一篇文章,分享一个自己编写的一个Vue的小组件,名叫BootPage. 不了解Vue.js的童鞋 ...
随机推荐
- 算法排序-NB三人组
快速排序: 堆排序: 二叉树: 两种特殊二叉树: 二叉树的存储方式: 小结: 堆排序正题: 向下调整: 堆排序过程: 堆排序-内置模块: 扩展问题topk: 归并排序: 怎么使用: NB三人组小结
- 加载jsp页面报#{} is not allowed in template text
问题是在引进jQueryUI时遇到 解决方法: 在page指令添加: deferredSyntaxAllowedAsLiteral="true" 例如:&l ...
- bootstrap-table自己配置
function initTable(){ var methodNameSearch=$("#methodNameSearch").val(); var requestUrl = ...
- parameters arguments 形式参数 实际参数
parameter和argument的区别 – 笑遍世界 http://smilejay.com/2011/11/parameter_argument/ https://en.wikipedia.or ...
- java之异常的捕获及处理
在java中程序的错误主要是语法错误和语义错误(也就是逻辑错误). java中异常处理语句的格式: try{ //有可能出现异常的语句 }catch(异常类 异常对象){ //编写异常的处理语句 }c ...
- js 链接传入中文参数乱码解决
传入时,可能出现中文的参数用encodeURI进行两次转码,如: lethref="http://www.zzdblog.cn?keyword='+encodeURI(encodeURI(k ...
- require实现单页应用程序(SPA)
写了一个测试代码,用require.js配合它的一个插件text.js实现了最简单的单页应用程序,简单的记录一下,方便以后复习, git地址:https://github.com/lily1010/r ...
- java hql case when 的用法
if(null == sorter){ hql.append(" order by m.mDate desc,case when m.mealTime = 'morning' then '1 ...
- 理解数学公式与numpy矩阵运算
1.矩阵的初始化 (1)创建一个 3*5的全0矩阵和全1矩阵 import numpy as np myzero = np.zeros([3,5]) print myzero myones = np. ...
- IOS开发学习笔记(2)-----UIButton 详解
1. [代码][C/C++]代码 //这里创建一个圆角矩形的按钮 UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRou ...