jQuery DataTables 事件 preXhr.dt 没有触发

jQuery DataTables event preXhr.dt doesn't fire

我需要在发送请求之前向 ajax 请求添加一些数据。我设置了事件处理程序 preXhr.dt 但由于某种原因它没有触发

$('.js-paging').on('preXhr.dt', function(e, settings, data){
    console.log(settings, data)
})

所以没有日志数据,事件还没有触发。

HTML

<span class="previous paginate_button">
    <a class="link js-paging" href="#">Previous</a>
</span>

dataTables 中的所有事件都直接在 <table> 元素本身上触发(在源代码中查找 _fnCallbackFire => $(settings.nTable).trigger( e, args )),因此您无法在任意位置捕获事件<a> 元素,如上所示。

$('table').on('preXhr.dt', function(e, settings, data){
$('#<table-id>').on('preXhr.dt', function(e, settings, data){
$('.<table-class>').on('preXhr.dt', function(e, settings, data){

有效。