dataTables分页展示数据注意事项(案例)(一)
2016-10-14 10:15
381 查看
dataTables可以高效的提供大量数据的表格展示:
代码如:
前台:
table = $('#example').DataTable(
{
"ajax" : "/c",
"ordering" : false,
"processing" : true,
"serverSide" : true,
"bDestroy" : true,//不加这个在第二次展示此表格时报错
"bLengthChange": false, //改变每页显示数据数量
"columns" : [ {
"data" : "id"
}, {
"data" : "name"
}, {
"data" : null
} ],
"columnDefs" : [
{
"targets" : 2,
"data" : null,
"render" : function(data, type, row) {
var html = '<a onclick="use(' + row.id + ','
+ orderId
+ ')" class="btn btn-primary">选用</a>';
return html;
}
} ],
"language" : {
"sProcessing" : "处理中...",
"sLengthMenu" : "显示 _MENU_ 项结果",
"sZeroRecords" : "没有匹配结果",
"sInfo" : "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
"sInfoEmpty" : "显示第 0 至 0 项结果,共 0 项",
"sInfoFiltered" : "(由 _MAX_ 项结果过滤)",
"sInfoPostFix" : "",
"sSearch" : "搜索:",
"sUrl" : "",
"sEmptyTable" : "表中数据为空",
"sLoadingRecords" : "载入中...",
"sInfoThousands" : ",",
"oPaginate" : {
"sFirst" : "首页",
"sPrevious" : "上页",
"sNext" : "下页",
"sLast" : "末页"
},
"oAria" : {
"sSortAscending" : ": 以升序排列此列",
"sSortDescending" : ": 以降序排列此列"
}
}
});
后台control:
int draw = Integer.valueOf(request.getParameter("draw
4000
"));
int start = Integer.valueOf(request.getParameter("start"));
int length = 5;固定前台展示的每页记录数,否则用length值
PageHelper.startPage(start / length + 1, length);
JsonObject jsonResponse = new JsonObject();
List<Template> list=null;
String searchValue = request.getParameter("search[value]");//实现搜索功能
if("".equals(searchValue)){
list = tem.findAllList();
}else{
list = tem.searchListByName("%" + searchValue + "%");
}
jsonResponse.addProperty("draw", draw);
jsonResponse.addProperty("recordsTotal", ((Page<Tem>) list).getTotal());
jsonResponse.addProperty("recordsFiltered",((Page<Tem>) list).getTotal());
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm")
.create();
jsonResponse.add("data", gson.toJsonTree(list));
return jsonResponse.toString();
上述是的例子,需要注意事项:
重新加载:table.ajax.reload();
要想更新dataTables时,在新方法中添加:$('#demo').dataTable().fnDestroy();
数据排序:$('#example').dataTable( {"aaSorting": [[ 4, "desc" ]]} );
代码如:
前台:
table = $('#example').DataTable(
{
"ajax" : "/c",
"ordering" : false,
"processing" : true,
"serverSide" : true,
"bDestroy" : true,//不加这个在第二次展示此表格时报错
"bLengthChange": false, //改变每页显示数据数量
"columns" : [ {
"data" : "id"
}, {
"data" : "name"
}, {
"data" : null
} ],
"columnDefs" : [
{
"targets" : 2,
"data" : null,
"render" : function(data, type, row) {
var html = '<a onclick="use(' + row.id + ','
+ orderId
+ ')" class="btn btn-primary">选用</a>';
return html;
}
} ],
"language" : {
"sProcessing" : "处理中...",
"sLengthMenu" : "显示 _MENU_ 项结果",
"sZeroRecords" : "没有匹配结果",
"sInfo" : "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
"sInfoEmpty" : "显示第 0 至 0 项结果,共 0 项",
"sInfoFiltered" : "(由 _MAX_ 项结果过滤)",
"sInfoPostFix" : "",
"sSearch" : "搜索:",
"sUrl" : "",
"sEmptyTable" : "表中数据为空",
"sLoadingRecords" : "载入中...",
"sInfoThousands" : ",",
"oPaginate" : {
"sFirst" : "首页",
"sPrevious" : "上页",
"sNext" : "下页",
"sLast" : "末页"
},
"oAria" : {
"sSortAscending" : ": 以升序排列此列",
"sSortDescending" : ": 以降序排列此列"
}
}
});
后台control:
int draw = Integer.valueOf(request.getParameter("draw
4000
"));
int start = Integer.valueOf(request.getParameter("start"));
int length = 5;固定前台展示的每页记录数,否则用length值
PageHelper.startPage(start / length + 1, length);
JsonObject jsonResponse = new JsonObject();
List<Template> list=null;
String searchValue = request.getParameter("search[value]");//实现搜索功能
if("".equals(searchValue)){
list = tem.findAllList();
}else{
list = tem.searchListByName("%" + searchValue + "%");
}
jsonResponse.addProperty("draw", draw);
jsonResponse.addProperty("recordsTotal", ((Page<Tem>) list).getTotal());
jsonResponse.addProperty("recordsFiltered",((Page<Tem>) list).getTotal());
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm")
.create();
jsonResponse.add("data", gson.toJsonTree(list));
return jsonResponse.toString();
上述是的例子,需要注意事项:
重新加载:table.ajax.reload();
要想更新dataTables时,在新方法中添加:$('#demo').dataTable().fnDestroy();
数据排序:$('#example').dataTable( {"aaSorting": [[ 4, "desc" ]]} );
相关文章推荐
- php分页和数据表字段设计注意事项
- 页面上需分页的数据(如Ext.grid.GridPanel)的注意事项
- Oracle IMPDP导入数据案例之注意事项(undo/temp)
- dataTables动态获取后台json数据分页展示
- Oracle rownum 分页注意事项
- 数据仓库的注意事项(PartI)
- 数据导入注意事项
- SQL SERVER与Excel数据导入导出之注意事项
- text数据类型字段输出显示内容(注意事项)
- SQLServer向Oracle转数据注意事项
- will_paginate 用作查询分页的注意事项
- datagrid分页注意事项
- 对有自增长字段的表导入数据注意事项
- 增量数据传输 思路与注意事项
- Access中用ADOX的方式创建表时,用到数据类型的注意事项
- 数据仓库的注意事项(PartII)
- 在ASP.Net With C# 中使用 DataGrid 控件分页展示数据
- Asp.net中数据类型赋值注意事项
- SQL SERVER 与ACCESS、EXCEL的数据转换和注意事项
- 使用 AJAX 的POST 发送数据的时候,注意的事项: