请教一下jQuery datatable的data.push() is not a function问题?

ntuzy 2018-10-14 09:19:09
$.dataTablesSettings = {
// 搜索框和页码设置在表格的下面
"dom": '<"top"i>rt<"bottom"flp><"clear">',
// 控制是否显示表格的信息
"info": false,
"processing": true,
"serverSide": true,
"bSort": true,
"searching": true,
//当处理大数据时,延迟渲染数据,有效提高Datatables处理能力
"deferRender": true,
"bFilter": true,
"ajax": "@Url.Action("List","Bayonet")",
"columns": [
{
"data": "BayonetID"
},
{ "data": "BayonetName" }, //
{ "data": "Lane" },//
{ "data": "Direction" },//
{ "data": "VehicleID" }, //
{ "data": "VehicleNumber" },//
{ "data": "VehicleType" },//
{
"data": "Date",
"mRender": function (data, type, full) {
return changeDateFormat(data);
}
},//
{
"data": "BayonetID",
"mRender": function (data, type, full) {
var re = "<div style='text-align:center'><a href='#' class='btn btn-danger'>删除</a></div>";
return re;
}
},
{
"data": "BayonetID",
"mRender": function (data, type, full) {
var re = "<a href='#' class='btn btn-primary'>编辑</a>";
return re;
}
}
],
"language": {
//"lengthMenu": "_MENU_ 条记录每页",
"sProcessing": "正在加载数据...",
"zeroRecords": "没有找到记录",
"info": "第 _PAGE_ 页 ( 总共 _PAGES_ 页 )",
"infoEmpty": "无记录",
"infoFiltered": "(从 _MAX_ 条记录过滤)",
"paginate": {
"previous": "上一页",
"next": "下一页",
"first": "首页",
"last": "尾页"
}
},
// 重新绘制表格的回调函数
"fnDrawCallback": function () {
//alert("重新绘制");
},
"fnServerParams": function (data) {
alert(aoData);
data.push(
{ "name": "BayonetName", "value": $("#BayonetName").val() }

);
}
}

$(document).ready(function () {

table = $("#table_local").DataTable($.dataTablesSettings);
});


后台:asp.net mvc 这么传到前台的

var result = new { draw = newDraw, recordsTotal = list.Count, recordsFiltered = totalCount, data = list };
return Json(result, JsonRequestBehavior.AllowGet);


但是前台报错 说data 没有push这个方法 不知道是什么原因 新手求教
...全文
1529 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Logerlink 2018-10-15
  • 打赏
  • 举报
回复
data为undefined,意为找不到这个变量,对undefined进行操作就会报此异常
可以在调用时,判断一下,避免异常
if(data!=undefined){
data.push(
{ "name": "BayonetName", "value": $("#BayonetName").val() }

);
}
  • 打赏
  • 举报
回复
哦sorry,上面回复与本帖子无关
  • 打赏
  • 举报
回复
也就是说,微信或者支付宝本身没有漏洞,是这种游戏诱使一些人成瘾和贪小便宜,结果被骗。
  • 打赏
  • 举报
回复
你可以使用 vs 在
data.push(
这一行设置断点进行调试,看看 data 是不是数组对象实例(还是 null)。 出了问题要调试。一个专业程序员都是第一时间贴出调试画面,会不会调试这个基本习惯,能看出培训水平。
EdsionWang 2018-10-15
  • 打赏
  • 举报
回复
建议参考官方文档 https://datatables.net/
  • 打赏
  • 举报
回复
比如说在 vs 调试器下,你就需要把 data 放到 vs 的“变量监视”窗口去查看,或者在调试命令行窗口运行
? tyeof data
这类代码看看结果.......这些就好像是医生,不会看化验单和扫描片子,只会看病人的脸色、问病人最近吃了什么来猜测病情,这不是真医生。
  • 打赏
  • 举报
回复
从你的 c# 代码可以看出,你返回的根本不是数组,不可能有 push 函数。 问题千千万网,你还是自己学会第一时间调试并且贴出调试画面给别人,学会动手。

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧