datatables ajax异步分页
$('#sample_1').dataTable({
"sAjaxSource": "../table/data",
// "bProcessing": true,
"bServerSide": true,
"fnServerData": function ( sSource, aoData, fnCallback ) {
console.log(111)
console.log(JSON.stringify(aoData));
$.ajax( {
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": fnCallback
} );
},
"bDeferRender": true,// 是否启用延迟加载:当你使用AJAX数据源时,可以提升速度。默认值:False
// "aaData": [
// /* Reduced data set */
// [ "Trident", "Internet Explorer 4.0", "Win 95+", 4, "X" ],
// [ "Trident", "Internet Explorer 5.0", "Win 95+", 5, "C" ],
// [ "Trident", "Internet Explorer 5.5", "Win 95+", 5.5, "A" ],
// [ "Trident", "Internet Explorer 6.0", "Win 98+", 6, "A" ],
// [ "Trident", "Internet Explorer 7.0", "Win XP SP2+", 7, "A" ],
// [ "Gecko", "Firefox 1.5", "Win 98+ / OSX.2+", 1.8, "A" ],
// [ "Gecko", "Firefox 2", "Win 98+ / OSX.2+", 1.8, "A" ],
// [ "Gecko", "Firefox 3", "Win 2k+ / OSX.3+", 1.9, "A" ],
// [ "Webkit", "Safari 1.2", "OSX.3", 125.5, "A" ],
// [ "Webkit", "Safari 1.3", "OSX.3", 312.8, "A" ],
// [ "Webkit", "Safari 2.0", "OSX.4+", 419.3, "A" ],
// [ "Webkit", "Safari 3.0", "OSX.4+", 522.1, "A" ]
// ],
"aoColumns": [
{ "bSortable": false },
null,
{ "bSortable": false },
null,
{ "bSortable": false },
{ "bSortable": false }
],
"aLengthMenu": [
[5, 15, 20, -1],
[5, 15, 20, "All"] // change per page values here
],
// set the initial value
"iDisplayLength": 5,
"sDom": "<'row-fluid'<'span6'l><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
"sPaginationType": "bootstrap",
"oLanguage": {
"sLengthMenu": "_MENU_ records per page",
"oPaginate": {
"sPrevious": "Prev",
"sNext": "Next"
}
},
"aoColumnDefs": [{
'bSortable': false,
'aTargets': [0]
}
]
});
@RequestMapping("/data")
@ResponseBody
public PageResult data(HttpServletRequest request,@ModelAttribute PageRequest pageRequest){
//
PageResult result = new PageResult();
JSONArray aaData = new JSONArray();
for (int i = pageRequest.getiDisplayStart(); i < pageRequest.getiDisplayStart()+pageRequest.getiDisplayLength(); i++) {
JSONArray row = new JSONArray();
row.add("a"+i);
row.add("b"+i);
row.add("c"+i);
row.add("d"+i);
row.add("e"+i);
row.add("f"+i);
aaData.add(row);
}
result.setAaData(aaData);
result.setSEcho(pageRequest.getsEcho()+1);
result.setITotalRecords(30);
result.setITotalDisplayRecords(30);
return result;
}
import com.alibaba.fastjson.JSONArray; public class PageResult { private Integer sEcho;//
private Integer iTotalRecords;//实际的行数
private Integer iTotalDisplayRecords;//过滤之后,实际的行数。
private String sColumns;//可选,以逗号分隔的列名,;
private JSONArray aaData; public PageResult() {
super();
} public Integer getSEcho() {
return sEcho;
} public void setSEcho(Integer sEcho) {
this.sEcho = sEcho;
} public Integer getITotalRecords() {
return iTotalRecords;
} public void setITotalRecords(Integer iTotalRecords) {
this.iTotalRecords = iTotalRecords;
} public Integer getITotalDisplayRecords() {
return iTotalDisplayRecords;
} public void setITotalDisplayRecords(Integer iTotalDisplayRecords) {
this.iTotalDisplayRecords = iTotalDisplayRecords;
} public String getSColumns() {
return sColumns;
} public void setSColumns(String sColumns) {
this.sColumns = sColumns;
} public JSONArray getAaData() {
return aaData;
} public void setAaData(JSONArray aaData) {
this.aaData = aaData;
} }
public class PageRequest { private int sEcho;//页数
private int iColumns;//
private String sColumns;
private int iDisplayStart;//开始行数
private int iDisplayLength;//结束行数 public int getsEcho() {
return sEcho;
}
public void setsEcho(int sEcho) {
this.sEcho = sEcho;
}
public int getiColumns() {
return iColumns;
}
public void setiColumns(int iColumns) {
this.iColumns = iColumns;
}
public String getsColumns() {
return sColumns;
}
public void setsColumns(String sColumns) {
this.sColumns = sColumns;
}
public int getiDisplayStart() {
return iDisplayStart;
}
public void setiDisplayStart(int iDisplayStart) {
this.iDisplayStart = iDisplayStart;
}
public int getiDisplayLength() {
return iDisplayLength;
}
public void setiDisplayLength(int iDisplayLength) {
this.iDisplayLength = iDisplayLength;
} }
datatables ajax异步分页的更多相关文章
- 5.Hibernate实现全套增删改查和ajax异步分页
1.1 创建如下oracle数据库脚本 drop sequence seq_stu; create sequence SEQ_STU minvalue maxvalue start increment ...
- 利用Linq + Jquery + Ajax 异步分页的实现
在Web显示的时候我们经常会遇到分页显示,而网上的分页方法甚多,但都太过于消耗带宽,所以我想到了用Ajax来分页,利用返回的Json来处理返回的数据, 大大简化了带宽的压力. 先说下思路,无非就是异步 ...
- DataTables ajax + bootstrap 分页/搜索/排序/常见问题
最近学校的网站建设需要,尝试使用了下Jquery dataTables控件,接触过C#的人都知道,C#中也含有一个DataTable,但它和我们今天讨论的东西无关 我使用的是官网最新的DataTabl ...
- 项目开发之分页---异步分页(ajax)
PS:前面忘了给大家讲解后台需要做的 ,同步分页的时候,我们只需要定义一个方法,给前台传递一个page对象,前台接收到直接展示即可:异步分页要多一步,首先还是写一个方法,传递初始对象,后面的ajax返 ...
- jQuery+Ajax+PHP实现异步分页数据显示
这几天做毕业设计的时候需要使用到一个异步分页的功能,即翻页的时候只是刷新分页的数据而不是刷新整个页面.因为之前做项目的时候没有做过这方面的功能,所以还是纠结了挺长时间的,在网上也找了很多资料,结合自己 ...
- Datatables插件1.10.15版本服务器处理模式ajax获取分页数据实例解析
一.问题描述 前端需要使用表格来展示数据,找了一些插件,最后确定使用dataTables组件来做. 后端的分页接口已经写好了,不能修改.接口需要传入页码(pageNumber)和页面显示数据条数(pa ...
- jquery 分页 Ajax异步
//使用Ajax异步查询数据 <div class="table-responsive"> <table class="table table-bord ...
- python操作三大主流数据库(6)python操作mysql⑥新闻管理后台功能的完善(增、ajax异步删除新闻、改、查)
python操作mysql⑥新闻管理后台功能的完善(增.删.改.查)安装表单验证D:\python\python_mysql_redis_mongodb\version02>pip instal ...
- 基于layerpage 前后端异步分页
#下载jquery 和 layerpage1.核心分页方法 laypage({ cont: 'page1', //容器.值支持id名.原生dom对象,jquery对象. pages: json.tot ...
随机推荐
- scala学习手记35 - 隐式类型转换
先来看一下下面的内容: 2 days "ago" 5 days "from_now" 如上的内容具体应该是什么呢?不过怎么看也不像是代码.不过既然是在学代码,拿 ...
- LeetCode第[29]题(Java):Divide Two Integers
题目:两整数相除 难度:Medium 题目内容: Given two integers dividend and divisor, divide two integers without using ...
- C语言中链接影响程序的细节
参考:<深入理解计算机系统> 7.61节 链接器如何解析多重定义的全局符号 基本的原则是这样的:对于所有的全局符号,函数和已初始化的全局变量是强符号,未初始化的全局变量是弱符号. Un ...
- Firefox 下载、附加组件、Flash插件、缓存位置(附加Chrome下载和Opera下载)
Firefox 下载的FTP页面: http://ftp.mozilla.org/pub/firefox/releases/ Firefox下载官方页面: https://www.mozilla.or ...
- 【2018年全国多校算法寒假训练营练习比赛(第四场)- E】通知小弟(强连通缩点)
题目链接:https://www.nowcoder.com/acm/contest/76/E 题目描述 在战争时期,A国派出了许多间谍到其他国家去收集情报.因为间谍需要隐秘自己的身份, ...
- Database项目中关于Procedure sp_refreshsqlmodule_internal的错误
最近项目中发现一怪问题,使用DB项目发布数据库时,总提示 “(110,1): SQL72014: .Net SqlClient Data Provider: Msg 1222, Level 16, S ...
- CSS:Tutorial three
1.CSS Links links can be styled differently depending on what state they are in. The four links stat ...
- javascript 继承的两种方式
js中继承可以分为两种:对象冒充和原型链方式 一.对象冒充包括三种:临时属性方式.call()及apply()方式1.临时属性方式 代码如下: function Person(name){ t ...
- Android 开发最牛的图片轮播控件,基本什么都包含了。
Android图片轮播控件 源码下载地址: Android 图片轮播 现在的绝大数app都有banner界面,实现循环播放多个广告图片和手动滑动循环等功能.因为ViewPager并不支持循环翻页, ...
- [转]MFC 调用 printf 输出
摘自:http://blog.csdn.net/miyunhong/article/details/6704121 #include <io.h> #include <fcntl.h ...