我正在使用asp.net mvc5并尝试使用jquery datatable插件服务器端处理。 服务器端处理的教程显示了从服务器返回结果的格式。但是我的项目的不同之处在于我无法从服务器发送“数据”的类型化数组。 我发送整个tbody作为字符串与所有HTML标签。 我的数据表代码如下。
var e = t.DataTable({processing: true,
serverSide: true,
info: true,
stateSave: true,
PaginationType: "full_numbers",
ajax:{
"url": '@Url.Action("AjaxGetJsonData","Define",new { tablename= @HttpContext.Current.Request.QueryString["tablename"] })',
"type": "GET",
"success": function (result) {
console.log(result);
$("#sample_1").find("tbody").html(result.data);
$("#sample_1_processing").hide();
Init();
//var oSettings = $("#sample_1").dataTable().fnSettings();
//oSettings.iTotalRecords = result.recordsTotal;
}
}
ajax的结果如下所示,
Object {draw: 1, iTotalRecords: 25000, iTotalDisplayRecords: 0, data: Array[1]}
数据就像
因为视图对于许多表是通用的,并且我应该控制许多情况。因此,我在服务器端使用StringBuilder。 如果我把成功放到ajax上,那么分页元素就会消失在数据表的底部。 为什么不允许在ajax中使用成功? 我有数据表的所有功能,有没有办法手动设置iTotalRecords等功能? 我知道这里不是数据表论坛。 我很抱歉,但我花了很多时间,找不到解决方案。 我想手动处理ajax成功的数据表的所有功能。我正在使用最新版本的数据表。