【发布时间】:2016-08-15 16:08:48
【问题描述】:
我正在使用 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 成功的数据表的所有功能。我正在使用最新版本的数据表。
【问题讨论】:
-
为什么不使用 PartialView 作为数据表?
-
@Alorika 感谢您的建议。我已经在为表格使用部分视图了。
标签: javascript jquery asp.net-mvc datatables server-side-rendering