首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery TableSorter在使用Ajax更新<td>更新数据库后不排序?

问jQuery TableSorter在使用Ajax更新<td>更新数据库后不排序?
EN

Stack Overflow用户
提问于 2015-06-17 12:12:32
回答 1查看 257关注 0票数 1

我正在实现一个评级系统,在这个系统中,用户可以对条目进行排名。每个条目都有一个排名,初始排名为0。我将此信息存储在数据库中,然后在页面上打印此表,并使用jQuery tablesorter类,因此所有条目都按等级排序。

当用户向上/向下排列一个条目时,我更新数据库中的排名,然后使用ajax显示更新后的排名。每个条目都有一个向上和向下按钮。

我初始化了表排序:

代码语言:javascript
复制
$(function() {
    $('#list_sort').tablesorter({ 
        sortList: [[0,0]],     // allow sorting on the ranking column only

        headers: {
            1: {
                sorter: false 
            }, 
            2: { 
                sorter: false 
            }, 
            3: { 
                sorter: false 
            }
        }
    })
});

向上和向下按钮有一个onClick事件,它调用一个更新数据库的函数,然后使用ajax更新排名,但我想在更新后对其进行排序。

我尝试了几种方法,包括:

代码语言:javascript
复制
$('#list_sort').trigger("update");

和

代码语言:javascript
复制
lastSortList = $("#list_sort")[0].config.sortList;
$("#list_sort").trigger("#list_sort", [lastSortList]);
$('#list_sort').tablesorter();

但似乎什么都不起作用。任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2015-06-17 12:28:53

我有一个解决方案,但我不认为这是一个好的解决方案。在用户排名和数据库更新后,我使用了setTimeout函数,它可以工作。

代码语言:javascript
复制
setTimeout(function() {
        $('#list_sort').tablesorter({ 
        sortList: [[0,1]],

        headers: {
            1: {
                sorter: false 
            }, 
            2: { 
                sorter: false 
            }, 
            3: { 
                sorter: false 
            }
        }
    })
    }, 50);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30882209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档