使用datatable,能实现初始化,在点击页码切换时,后台代码也有运行,但前台页面上的表格不刷新,一直显示“处理中”,请问大牛们,是什么原因造成的?js主要代码如下:
<script type="text/javascript">
$(document).ready(function() {
var table1 = $('#sample_1').dataTable( {
"processing" : true,
"serverSide": true,
// "paging" : false, //可以控制自定义显示多少页和下面的页码
"sPaginationType": "bootstrap_full_number",
"searching": false,
"lengthMenu": [ 5, 10, 15, 20 ],
"pageLength": 5,
/* "sAjaxSource": "user/getusers",*/
"bServerSide": true,
"bPaginate":true,
"ajax": {
"url":"user/getusers",
"type": "POST",
"dataSrc":
function(json){
for ( var i=0, ien=json.data.length ; i<ien ; i++ ) {
json.data[i][0] = '<a href="/message/'+json.data[i][0]+'">View message</a>';
alert(json.data[i][0]);
}
return json.data;
}
},
"columns": [
{ "data": "id" },
{ "data": "username" },
{ "data": "loginname" },
{ "data": "password" },
{ "data": "sex" },
{ "data": "telephe" },
{ "data": "email" },
{ "data": "about" },
{ "data": "imgurl" }
],
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" : ": 以降序排列此列"
}
}
});
});
</script>
后台controller.java代码如下:
@RequestMapping("/getusers")
public void getUserPage(HttpServletRequest request, HttpServletResponse response)throws Exception{
response.setContentType("application/json;charset=utf-8");
Integer pageNo = Integer.valueOf(request.getParameter("start")) ;
Integer pageLength = Integer.valueOf(request.getParameter("length")) ;
List<User> lists = systemService.findUser(pageNo,pageLength) ;
// List<String> liststr = new ArrayList();
Iterator<User> iter = lists.iterator();
while(iter.hasNext()){
User user = (User)iter.next();
user.setImgurl("<a href=user/update?flag=1&id=" + user.getId()+">打开</a>");
}
Integer allRecord = systemService.findCountUser();
PrintWriter pw = response.getWriter();
Map<String,Object> map = new HashMap<String,Object>();
map.put("draw", 1) ;
map.put("recordsTotal", allRecord);
map.put("recordsFiltered", allRecord);
map.put("data", lists) ;
Gson g = new Gson();
String jsons = g.toJson(map);
pw.write(jsons);
}
<script type="text/javascript">
$(document).ready(function() {
var table1 = $('#sample_1').dataTable( {
"processing" : true,
"serverSide": true,
// "paging" : false, //可以控制自定义显示多少页和下面的页码
"sPaginationType": "bootstrap_full_number",
"searching": false,
"lengthMenu": [ 5, 10, 15, 20 ],
"pageLength": 5,
/* "sAjaxSource": "user/getusers",*/
"bServerSide": true,
"bPaginate":true,
"ajax": {
"url":"user/getusers",
"type": "POST",
"dataSrc":
function(json){
for ( var i=0, ien=json.data.length ; i<ien ; i++ ) {
json.data[i][0] = '<a href="/message/'+json.data[i][0]+'">View message</a>';
alert(json.data[i][0]);
}
return json.data;
}
},
"columns": [
{ "data": "id" },
{ "data": "username" },
{ "data": "loginname" },
{ "data": "password" },
{ "data": "sex" },
{ "data": "telephe" },
{ "data": "email" },
{ "data": "about" },
{ "data": "imgurl" }
],
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" : ": 以降序排列此列"
}
}
});
});
</script>
后台controller.java代码如下:
@RequestMapping("/getusers")
public void getUserPage(HttpServletRequest request, HttpServletResponse response)throws Exception{
response.setContentType("application/json;charset=utf-8");
Integer pageNo = Integer.valueOf(request.getParameter("start")) ;
Integer pageLength = Integer.valueOf(request.getParameter("length")) ;
List<User> lists = systemService.findUser(pageNo,pageLength) ;
// List<String> liststr = new ArrayList();
Iterator<User> iter = lists.iterator();
while(iter.hasNext()){
User user = (User)iter.next();
user.setImgurl("<a href=user/update?flag=1&id=" + user.getId()+">打开</a>");
}
Integer allRecord = systemService.findCountUser();
PrintWriter pw = response.getWriter();
Map<String,Object> map = new HashMap<String,Object>();
map.put("draw", 1) ;
map.put("recordsTotal", allRecord);
map.put("recordsFiltered", allRecord);
map.put("data", lists) ;
Gson g = new Gson();
String jsons = g.toJson(map);
pw.write(jsons);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货