gpt4 book ai didi

javascript - 为什么不允许在 jquery 数据表服务器端处理 ajax 中使用成功?

转载 作者:搜寻专家 更新时间:2023-11-01 04:30:10 25 4
gpt4 key购买 nike

我正在使用 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>

因为 View 对于许多表是通用的,而且有很多情况我应该控制。因此,我在服务器端使用 StringBuilder。如果我成功使用 ajax,则分页元素会消失在数据表的底部。为什么不允许在ajax中使用success?我拥有数据表的所有全部功能,有没有办法手动设置 iTotalRecords 等功能?我知道这里不是数据表论坛。我对此感到抱歉,但我花了很多时间却找不到解决方案。我想手动处理 ajax 成功中数据表的所有功能。我正在使用最新版本的数据表。

最佳答案

最后我已经解决了我的问题。有一些有趣的东西,但我现在可以使用成功了。

var e = t.DataTable({
processing: true,
serverSide: true,
info: true,
stateSave: true,
PaginationType: "full_numbers",
"sAjaxSource": '@Url.Action("AjaxGetJsonData","Define")',
"fnServerData": function (sSource, aoData, fnCallback) {
aoData.push({ "name": "tablename", "value": $("#temprory").val() });
console.log(aoData);
$.ajax({
url: sSource,
type: "POST",
data: aoData,
success: function (msg) {
fnCallback(msg);
console.log(msg);
$("#sample_1").find("tbody").html(msg.data);
$("#sample_1_processing").hide();
Init();
}
});
}

有趣的一点是,如果您删除 fnCallback(msg),下面包含分页的数据表部分就会消失。我不知道它到底做了什么,但这解决了我的问题。

关于javascript - 为什么不允许在 jquery 数据表服务器端处理 ajax 中使用成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36786847/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com