Jquery Datatable-无法读取属性';sSortAscending';未定义的
我正在尝试重新加载datatable的数据。为此,我清理表,然后动态添加行 JS HTMLJquery Datatable-无法读取属性';sSortAscending';未定义的,jquery,html,datatable,datatables,Jquery,Html,Datatable,Datatables,我正在尝试重新加载datatable的数据。为此,我清理表,然后动态添加行 JS HTML 数据1 数据2 数据3 返回 jquery.dataTables.min.js:68未捕获类型错误:无法读取属性 未定义的“sSortAscending” 所以,有人知道怎么回事吗?试着这样做,而不是: if ($.fn.DataTable.isDataTable("#achats_table")) { $('#tbl_mostrar_alarmas').DataTable().clear()
数据1
数据2
数据3
返回
jquery.dataTables.min.js:68未捕获类型错误:无法读取属性
未定义的“sSortAscending”
所以,有人知道怎么回事吗?试着这样做,而不是:
if ($.fn.DataTable.isDataTable("#achats_table")) {
$('#tbl_mostrar_alarmas').DataTable().clear();
$('#tbl_mostrar_alarmas').DataTable().destroy();
$('#tbl_mostrar_alarmas').empty();
}
试着这样做,而不是:
if ($.fn.DataTable.isDataTable("#achats_table")) {
$('#tbl_mostrar_alarmas').DataTable().clear();
$('#tbl_mostrar_alarmas').DataTable().destroy();
$('#tbl_mostrar_alarmas').empty();
}
解决方案 我找到了解决办法。尝试多次加载datatable配置时出现错误。为了避免这种情况,我需要检查配置是否已加载(或未加载),并且只加载一次
if ($.fn.DataTable.isDataTable('#tbl_mostrar_alarmas')) {
$('#tbl_mostrar_alarmas').DataTable().clear().rows.add(tablaModalData).columns.adjust().draw();
} else {
table();
}
var table = $('#tbl_mostrar_alarmas').DataTable({
'responsive': true,
'bRetrieve': true,
"bLengthChange": false,
'pageLength': 5,
"data": tablaModalData,
"order": [
0, 'desc'
],
"columns": [{
"data": "fecha",
"defaultContent": "-",
},
{
"data": "usuario",
"defaultContent": "-"
},
{
"data": "suceso",
"defaultContent": "-",
}
],
"columnDefs": [{
"targets": 0,
render: function(data) {
return moment(data).format('DD/MM/YYYY HH:mm');
}
}]
}
table();
解决方案 我找到了解决办法。尝试多次加载datatable配置时出现错误。为了避免这种情况,我需要检查配置是否已加载(或未加载),并且只加载一次
if ($.fn.DataTable.isDataTable('#tbl_mostrar_alarmas')) {
$('#tbl_mostrar_alarmas').DataTable().clear().rows.add(tablaModalData).columns.adjust().draw();
} else {
table();
}
var table = $('#tbl_mostrar_alarmas').DataTable({
'responsive': true,
'bRetrieve': true,
"bLengthChange": false,
'pageLength': 5,
"data": tablaModalData,
"order": [
0, 'desc'
],
"columns": [{
"data": "fecha",
"defaultContent": "-",
},
{
"data": "usuario",
"defaultContent": "-"
},
{
"data": "suceso",
"defaultContent": "-",
}
],
"columnDefs": [{
"targets": 0,
render: function(data) {
return moment(data).format('DD/MM/YYYY HH:mm');
}
}]
}
table();
您使用的是旧版本的datatables吗?较新版本使用
$('tbl_mostrar_alarmas')。数据表
带有大写字母D
。请更正。您使用的是旧版本的datatables吗?较新版本使用$('tbl_mostrar_alarmas')。数据表
带有大写字母D
。请更正。@ElHombreSinNombre这意味着它正在尝试在销毁完成之前重新创建表。尝试使用我提到的大写字母D初始化datatabse。或者用$(“#tbl_mostrar_alarmas”).dataTable().fndrow()替换我的前两行代码>我将datatable更改为datatable(我也更新了问题),并且出现了相同的错误。@ElHombreSinNombre请尝试在代码段中重新创建问题。因为我给你的代码是重新初始化数据表的正确方法。如果错误仍然存在,那么问题来自其他地方,没有进一步的细节,我无法猜测。不幸的是,我找到了解决方案并更新了帖子。无论如何,谢谢你的帮助。@ElHombreSinNombre很高兴尝试过;)在单独的答案中发布您的解决方案,解释错误,并将其标记为已回答。@ElHombreSinNombre这意味着它正在尝试在销毁完成之前重新创建表。尝试使用我提到的大写字母D初始化datatabse。或者用$(“#tbl_mostrar_alarmas”).dataTable().fndrow()替换我的前两行代码>我将datatable更改为datatable(我也更新了问题),并且出现了相同的错误。@ElHombreSinNombre请尝试在代码段中重新创建问题。因为我给你的代码是重新初始化数据表的正确方法。如果错误仍然存在,那么问题来自其他地方,没有进一步的细节,我无法猜测。不幸的是,我找到了解决方案并更新了帖子。无论如何,谢谢你的帮助。@ElHombreSinNombre很高兴尝试过;)在一个单独的答案中张贴你的解决方案,解释错误所在,并将其标记为已回答。