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 ...
随机推荐
- SpringBoot实现多数据源(实战源码)
通过一个数据库的表数据去查询同步另一个数据库,之前的方式是通过写个小工具,然后jdbc方式进行处理,这个方式也挺好用的.学习了springboot后发现可以实现多数据源操作,然后就具体实现以下. 以下 ...
- Java中如何指定跳出多重嵌套循环
今天做项目优化涉及到一个跳出指定多重嵌套循环的问题,觉得还是记录一下那么在Java中如何跳出当前的多重嵌套循环? 方法一:可以在需要的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的br ...
- NLP(二)_汉语言分词技术-最大匹配法
前述 词是自然语言中最小的有意义的构成单位.汉语文本是基于单字的文本,汉语的书面表达方式以汉字作为最小单元,词与词之间没有明显的界限标志,因此,分词是汉语文本分析处理中首先要解决的问题之一. 分词可能 ...
- 解析session与cookie
Session和Cookie相关概念 Session和Cookie都是有服务器生成的. Session和Cookie都是键值对形式保存,主要用于存储特定的一些状态值. Session保存在服务器,Co ...
- 基于mysql的全文索引
支持引擎:mysql的MyISAM存储引擎和Innodb存储引擎(5.6及其以上)支持. 适用类型:char.varchar和text. 新建方法:ALTER TABLE article ADD F ...
- iOS自动化探索(四)自动化测试框架pytest - 安装和使用
自动化测试框架 - pytest pytest是Python最流行的单元测试框架之一, 帮助更便捷的编写测试脚本, 并支持多种功能复杂的测试场景, 能用来做app测试也能用作函数测试 官方文档: ht ...
- 【2018年全国多校算法寒假训练营练习比赛(第四场)-D】小明的挖矿之旅
题目链接:https://www.nowcoder.com/acm/contest/76/D 做题时没注意到“无论出现在哪个格子”..题中也没说明一个格子只能经过一次,其实没有想象的复杂. 判断如果点 ...
- sql server显示行号
-- 工具-> -- 选项-> -- 文本编辑器-> -- 所有语言-> -- 常规-> -- 显示-> -- 行号
- QWidget类参考
QWidget类是所有用户界面对象的基类. 详情请见…… #include <qwidget.h> 继承QObject和QPaintDevice. 被QButton.QFrame.QDia ...
- Freemarker Failed at: ${itm.creatTimeString?string("yyyy-MM... [in template
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px 'Helvetica Neue'; color: #454545} p.p2 {margin: ...