gpt4 book ai didi

javascript - Tablesorter 无法在 updateComplete 上应用搜索条件

转载 作者:行者123 更新时间:2023-11-28 09:20:24 25 4
gpt4 key购买 nike

我有一个“tablesorter 表”,其中第一列包含类别名称。我使用快捷按钮来过滤行,这些快捷按钮会根据激活的按钮触发特定的“搜索”操作:

function do_filtering() {
var category = $('#categories .active a').attr('data-filter-text');
var columns = [];
columns[0] = category;
$('table').trigger('search', [columns]);
}

表格内容可能会发生变化。到目前为止,我在表上触发了两个事件:“updateCell”和“search”,并且它得到了正确更新。

我需要分隔这些调用:

  • “updateCell”将由单元格编辑器触发(附加特定列内容的“排序器”)
  • 单元格更新后将触发“搜索”。

不幸的是,在“updateComplete”处理程序中进行过滤不起作用,请参阅:http://jsfiddle.net/8cg4f/352/

更新表格后如何保留搜索条件?

最佳答案

好吧,问题似乎是由于过滤器输入为空,过滤器小部件显示更新后的所有行。我有两种解决方案,第二个可能是更好的解决方案,因为第一种方法会导致闪烁:

1) 在回调中添加一个setTimeout,时间为1毫秒( demo ):

    $('td').click(function () {
resort = false;
$("table").trigger('updateCell', [$(this).closest('td'), resort, function(table){
setTimeout(function(){ do_filtering(); }, 1);
}]);
});

2) 更新过滤器,并隐藏过滤器行 ( demo ):

CSS

.tablesorter-filter {
display: none;
}

代码

function do_filtering() {
var category = $('#categories .active a').attr('data-filter-text');
$('.tablesorter-filter:first').val(category).trigger('search');
}

$('td').click(function () {
resort = false;
$("table").trigger('updateCell', [$(this).closest('td'), resort, function(table){
do_filtering();
}]);
});

关于javascript - Tablesorter 无法在 updateComplete 上应用搜索条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15071348/

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