gpt4 book ai didi

javascript - DataTables:重置表数据

转载 作者:行者123 更新时间:2023-11-27 22:56:29 25 4
gpt4 key购买 nike

有一些数据,这些数据来自 AJAX 并呈现在表格中。还有切换按钮,其阶段是“显示重复项”和“显示全部”。第一次进入页面时,所有数据都会呈现,按钮阶段是“显示重复项”。如果按“显示重复项”,特殊的ajax请求将发送到服务器,并且响应正在JS中处理:

if (res[0] == '200' || res[0] == '404') {
if (!is_duplicates_showed) { //if pressed 'Show duplicates'

$.fn.dataTable.ext.search.push(
function(settings, data, dataIndex) {
return $.inArray($(table.row(dataIndex).node()).find('td:first').find('form').find('input[name="registration_id"]').val(), res[1]) > -1;
}
);

table.draw();
} else { //if pressed 'Show all'

结果:只有那些注册ID适合来自ajax的ID的行是可见的。按钮状态更改为“显示全部”。

问题:当按“显示全部”时,如何重置数据(再次显示所有数据)?

我尝试过的内容(在else部分):

1.

var table = $('#participants').DataTable();
table
.search( '' )
.columns().search( '' )
.draw();

2.

$.fn.dataTable.ext.search.pop();

3.

table.destroy();
var newTable = $('#participants').DataTable();
newTable.draw();

没有成功。在这些操作之后,我仍然看到“过滤”行,这些行是由 push() 结果给出的。

最佳答案

尝试下面的代码:

$.fn.dataTable.ext.search = [];
table.draw();

关于javascript - DataTables:重置表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37570076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com