服务器端路径提供了404错误,其中路径与表的初始加载时使用的路径相同。该表被销毁,并且列被动态更改。
我成功地在有静态列的情况下应用了服务器端处理。以前,我是在没有服务器端处理的情况下动态创建表的,但是现在负载太大,无法处理。因此,我已经转向使用服务器端处理配置的SQL分页,但是即使认为路径与最初加载表但具有一个静态列的路径相同时,它也不会加载表。由于使用该库已有多长时间,因此我正在使用1.10.15版,并且我担心很多表如果升级就无法使用。不确定是否可以解决问题。
JQuery数据表代码
var oTable = $("#InvoiceProcessing").DataTable({
jQueryUI: true,
pagingType: "full_numbers",
responsive: true,
"scrollX": true,
"bServerSide": true,
"sAjaxSource": "@Url.Action("GetInvoiceProcessing", "InvoiceProcessing")?clientId=" + cId + "&summaryDate=" + sumDate + "&processedDate=" + procDate + "&accountNumber=&invoiceNumber=",
"bProcessing": true,
"destroy": true,
lengthMenu: [[25, 50, 100], [25, 50, 100]],
"autoWidth": true
});
C#方法签名-此方法未命中
public async Task<ActionResult> GetInvoiceProcessing(Guid? clientId, DateTime? summaryDate, DateTime? processedDate, DataTableParamModel param, string accountNumber = "", string invoiceNumber = "")
我需要让分页反映查询的全部大小。我正在使用sql分页,它返回总记录数和仅数据的页面长度。如果我能在没有服务器端处理的情况下完成此任务,我也会对此感到满意。
答案 0 :(得分:0)
我能够使用Priyank Panchal提供的信息,但可以根据建议修改建议中的解决方案。
我无法按原样使用它,因为我为网格生成的列是由数据动态驱动的,因此无法在加载之前预定义。
为此,我必须以三种不同方式加载网格。
与此同时,还需要隐藏第一列,这是通过Datatables配置的“ columnDefs”属性完成的。
最后一个要求是为编辑和删除按钮提供其他字段。
这也是通过“ columnDefs”属性以及以下列方式引用该表来完成的:“ aTargets”:[oTable.columns()[0] .length-2]。这样就可以将其首先添加到最后一列,然后再添加到另一列。