JQuery 数据表列数据更新工作太慢

JQuery datatable column data update works too slow

本文关键字:工作 更新 数据 数据表 JQuery      更新时间:2023-09-26

正在使用数据表生成表。我在表格下方有文本框,当我向该文本框添加任何值时,该值应更新为第一行的特定列,然后该列的每一行都应递增 1(新更新的值)。

我有代码,对我来说效果很好。但这需要太多时间。我在表中有 159 条记录,当我更新列时,大约需要 8-9 秒,这是很长的持续时间。在执行完成之前,我什么也做不了。

JS代码:

updateNo: function(dataTableId, noColIndex, numToAdd) {
    var dataTable = $(dataTableId).dataTable();
    var numberOfRows = dataTable.api().rows().data().length;
    var index;
    for (index = 0; index < numberOfRows; index++) {
        var cell = dataTable.api().cell(index, noColIndex);
        var currentNo = cell.data();
        var newNo = parseInt(currentNo) + numToAdd;
        cell.data(newNo).draw();
    }
}

我尝试计算方法执行时间,发现方法的最后一行:cell.data(newNo).draw();需要更多时间来执行。

我对JavaScript或Jquery不太精通,所以我不知道原因。如果有人知道原因并解决此问题,请告诉我。

我想为此减少执行时间。

您不必重绘每个单元格,只需在执行代码后重绘整个表格一次