我正在使用 asp.net mvc5 并尝试使用 jquery 数据表插件服务器端处理。服务器端处理的教程显示了从服务器返回结果的格式。但我的项目中的不同之处在于我无法从服务器发送“数据”的类型化数组。我将整个 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]}
数据就像
<tr><td></td><td></td><td></td><td></td></tr>
因为视图对于许多表来说是通用的,并且我应该控制很多情况。因此,我在服务器端使用 StringBuilder。如果我把成功的 ajax 分页元素消失在数据表的底部。为什么不允许在ajax中使用success?我拥有数据表的所有全部功能,有没有办法手动设置像 iTotalRecords 这样的功能?我知道这里不是数据表论坛。对此我很抱歉,但我花了很多时间却找不到解决方案。我想手动处理 ajax 成功中数据表的所有功能。我正在使用最新版本的数据表。