【发布时间】:2016-03-14 17:49:55
【问题描述】:
正在使用数据表生成表。 我在表格下方有文本框,当我向该文本框添加任何值时,该值应更新为第一行的特定列,然后该列的每一行应递增 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,所以我不知道原因。如果有人知道这个问题的原因并解决了这个问题,请告诉我。
我想减少执行时间。
【问题讨论】:
-
也许this 可以为您提供帮助。
标签: javascript jquery datatable execution-time