jquery - 动态 fnAddData 时,DataTables 显示 "Processing..."标签

标签 jquery datatables

我有一个函数可以动态地将数据添加到数据表中。这是函数。

function fnClickAddRow() {
    for (i=0; i<10000; i++) {
        $('#example').dataTable().fnAddData( [
         giCount+".1",
         giCount+".2",
         giCount+".3",
         giCount+".4" ]
        );
    }
}

此函数将动态附加到我的#example数据表中,但在操作过程中屏幕看起来挂起,有没有办法使用“处理”显示加载/处理标志:是的,

最佳答案

没有功能可以通过 API 触发显示“正在处理”消息,但是有一个解决方法。

您需要使用 bProcessing: true(对于 DataTables 1.9)或 processing: true(对于 DataTables 1.10)启用处理指示器。

显示 ID 为 example 的表的处理指示符:

$('.dataTables_processing', $('#example').closest('.dataTables_wrapper')).show();

隐藏 ID 为 example 的表的处理指示符:

$('.dataTables_processing', $('#example').closest('.dataTables_wrapper')).hide();

另一件值得一提的事情是,由于某种原因,直到我添加了 100 毫秒延迟的 setTimeout 后,处理指示器才显示。

顺便说一句,为了提高性能,您需要指定 false 作为 fnAddData() 的第二个参数,以指示不需要重新绘制。添加完行后,您可以调用 fnDraw() 来重绘表格,请参阅 this jsFiddle .

如果您首先将数据放入数组中,然后调用 fnAddData() 一次,则可以进一步提高性能。

参见this jsFiddle用于代码和演示。

关于jquery - 动态 fnAddData 时,DataTables 显示 "Processing..."标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31367233/

相关文章:

javascript - 按列选择行值

jquery - 管理 jQuery 自定义事件

php - 如何定期更新雅虎天气/简单派的屏幕?

javascript - 脚本在 JSfiddle 中工作正常,但在现场却不行

jquery - 为什么我的第二个下拉菜单没有被填充?

javascript - 如何使用 javascript 以 excel 文件格式导出表格

javascript - 按主行展开/折叠行分组?

javascript - 使用来自 API 的 JSON 填充数据表

jquery - 如何更改数据表插件中导出pdf的字体大小

jquery - 如何将自定义元素添加到数据表顶部的 div?