我找到了一个有效的解决方案,而不希望无法预料的问题。
$(document).ready ->
initLeagueIndexDataTable()
$(document).on 'pjax:end', ->
initLeagueIndexDataTable()
initLeagueIndexDataTable : ->
if ($('#league_index').length > 0 && !$('#league_index_wrapper').length > 0)
$('#league_index').dataTable({
'sPaginationType': 'full_numbers',
'bJQueryUI': true,
'bProcessing': true,
'bServerSide': true,
'sAjaxSource': $('#league_index').data('source'),
'aoColumnDefs': [
{ "bSortable": false, "aTargets": [ 1 ] },
{ "bSortable": false, "aTargets": [ 2 ] },
{ "bSortable": false, "aTargets": [ 3 ] },
{ "bSortable": false, "aTargets": [ 4 ] },
{ "bSortable": false, "aTargets": [ 5 ] }
],
'bFilter': false,
'iDisplayLength': 25,
'bDestroy': true
})
尝试运行在'ready'事件创建表的功能 - 我的意思是简单的网页加载(在'pjax除了创作:启动“或” pjax:end') – Daniel
我遇到这个也是。我在document.ready和pjax上有我的datatables init代码:end,而且我仍然看到问题。 我试着在pjax上移动它:开始,而不是再看到问题,但引入了另一个问题,其中一些数据表根本没有初始化。 – Pash