数据表排序和active.recalc()冻结了我的浏览器

时间:2018-07-18 08:41:40

标签: jquery datatables

我有一个带有数据表的模态。

这是Thead:

<thead>
    <tr>
<th data-priority="1" class="noVis"></th>
        <th data-priority="1" class="text-center azioni colCheckbox noVis"><input value="1" type="checkbox" /></th>
        <th data-priority="1" class="noVis">Anteprima</th>
        <th data-priority="1" class="noVis">Nome</th>
        <th data-priority="1">---</th>
        <th data-priority="3">---</th>
        <th data-priority="3">---</th>
        <th data-priority="4">---</th>
        <th data-priority="5">---</th>
    </tr>
    </thead>

它具有响应性,并且可以通过以下方式进行选择:

"aaSorting": [[ 3, "asc" ]],
   responsive: {
        details: {
            type: 'column',
            target: 0
        }
    },
    "columnDefs": [
        {
            orderable: false,
            className: 'control',
            searchable: false,
            targets:   0
        },
        {
            orderable: false,
            className: 'selectall-checkbox',
            searchable: false,
            targets:   1
        }
    ],
select: {
        style:    'multi',
        selector: 'td:nth-child(2)'
    },

初始排序是由ASC的“ NAME”列

enter image description here

在单击DESC顺序的NAME列的订单后,出现问题,原因是没有出现响应(我的一些单元格NAME为空,所以所有列都保留在ASC顺序的视图中,但是我还有一个单元格NAME的值较长,因此如果我点击DESC订单,就会出现此问题)

enter image description here

但是如果我用DESC命令初始化数据表,一切正常,因为响应式已初始化!

我试图插入此代码(所有表均为全局代码):

$(document).on('order.dt', function () {

   $.fn.dataTable.tables( {visible: true, api: true} ).columns.adjust().responsive.recalc().draw();

} );

但是浏览器(firefox冻结)。我收到错误日志:“递归过多”

如何在订单列后强制数据表检查响应?

更新:我的小提琴http://live.datatables.net/xiyozede/2/edit

0 个答案:

没有答案