DataTables 事件不适用于数据选项
Posted
技术标签:
【中文标题】DataTables 事件不适用于数据选项【英文标题】:DataTables events don't work with data option 【发布时间】:2021-12-19 12:26:39 【问题描述】:我正在使用 DataTables 1.11.3 并像这样通过 ajax 加载数据,所有事件捕捉器都可以正常工作。但是,如果我删除 ajax 选项并放入“data”:ta_data,事件根本不起作用,没有人。然后,如果我通过按钮 'cklick' ajax 源和重绘事件再次工作,事件不适用于来自局部变量数据的静态加载数据?
$(document).ready(function()
"use strict";
const ta_data = JSON.parse(ta).data;
let table_arch = $("#datatable-archive").DataTable(
"scrollY": '60vh',
"scrollX": false,
"paging": false,
"searching": false,
"info": false,
"order": [[ 10, "desc" ]],
"ajax":
"url": 'rest/data/history/' + last_date,
"error": function(a,b,c)showErrorModal(a,b,c); offSpinner();
,
)
.on( 'preDraw', function() sp = buy:0, sell:0, buyErr:0, sellErr:0;)
.on( 'draw.dt', function()
$.when(offSpinner()).then(
function()
gageMaker(sp, "Accuracy");
commonDonut();
)
);
);
【问题讨论】:
【参考方案1】:需要更改顺序。先设置事件捕获器,然后初始化表
const ta_data = JSON.parse(ta).data;
let table_arch = $("#datatable-archive"))
.on( 'draw.dt', function()
$.when(offSpinner()).then(
function()
gageMaker(sp, "Accuracy");
commonDonut();
)
).DataTable(
"scrollY": '60vh',
"scrollX": false,
"paging": false,
"searching": false,
"info": false,
"order": [[ 10, "desc" ]],
"data" : ta_data
,
)
【讨论】:
以上是关于DataTables 事件不适用于数据选项的主要内容,如果未能解决你的问题,请参考以下文章
DataTables row.add() 不适用于 serverSide 选项
yajra/laravel-datatables 搜索不适用于 laravel 5.4