我自己会解释jquery插件的功能,但网站肯定比我能做的更好,它似乎是一个非常简单的插件大部分
我正在使用此插件在生成后过滤我的表,工作正常。问题是该表是实时更新,在过滤表后,如果收到新的更新,然后再次过滤该表,则数据会重复。
我一直在寻找它,似乎插件构建了一个信息缓存,允许数据被过滤。
我想要做的是删除缓存并在每次更新时重建它,防止将重复信息附加到表数组。
客户端javascript:
function appendTables(appendData, index) {
var tabPage = "#tabpage_"+index+" > #myJobs_"+index+" > .userJobs";
userJobsElement = $(tabPage);
userJobsElement.empty();
userJobsElement.append(appendData);
applySortTable();
}
此部分使用动态ID和2个标准表生成多个表:
function applySortTable() {
var tables = $('table');
tableCount = tables.length-2;
$("#myJobs_all").tablesorter();
$("#myJobs_noteam").tablesorter();
for (var i = 0; i < tableCount; i++){
$("#myJobs_"+ i).tablesorter();
}
然后使用插件生成表格,正如我所说的那样创建一个缓存,是否有人知道如何清除缓存然后在用户发生这种情况时重建它?
更新
数据的更新现在正在运行,但目前我们已经设置了基于标签的表系统来查看不同的团队信息。处理更新时,表只在第一个表中更新,其他表停止工作,有人知道如何处理这个吗?
答案 0 :(得分:5)
重新初始化tablesorter插件不是正确的方法。添加新内容后,只需触发更新方法:
$("table tbody")
.append(appendData)
.trigger('update'); // this event will bubble up
查看this demo的代码示例