jquery - tableSorter 限制(排序)一次一页?

标签 jquery tablesorter

我发现在 tableSorter 中你可以一次对一页进行排序,这让我很担心。

一次只能对一页结果进行排序?这是相当有限的。如果您有一个跨多个页面的查询结果,您将如何处理?

如果有人知道更好,如果我不正确,请随时纠正我

谢谢。

最佳答案

我会为表中的 th 分配一个 ID,该 ID 对应于 SQL 表中的列。

$("table thead th").click(function(){
    $.getJSON('ajax/get_results.php', 
        {sortby: $(this).attr('id')},
        function(data) {
            $.each(data, function(){
                // fill table here
            }
        });   
});

您可以创建一些对表格进行排序的函数,如果您还没有这样做,也可以使用它来通过 AJAX 更改页面。

然后在后端使用 SQL 进行排序

"SELECT * FROM table ORDER BY ".$_GET['sortby']

当然,您应该保护该排序依据,例如使用允许值的数组对其进行过滤。我建议创建一个具有允许的列排序名称的数组并使用 array_intersect()函数仅过滤掉允许的值或仅检查

if(isset($allowed_columns[$_GET['sortby']]))

然后将所有结果放入一个数组中,以 JSON 格式输出,然后:

echo json_encode($array_with_results);

我猜你想在 JSON 中输出这样的东西:

{
  {col1: 'row1',col2: 'row1',col3: 'row1'},
  {col1: 'row2',col2: 'row2',col3: 'row2'},
  {col1: 'row3',col2: 'row3',col3: 'row3'}
}

关于jquery - tableSorter 限制(排序)一次一页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2827940/

相关文章:

javascript - Jquery Tablesorter 过滤器和外部选择框

jquery-mobile - Tablesorter 寻呼机不工作

javascript - jQuery Tablesorter 更改行的值或样式

javascript - 即使窗口很小,也要在表格底部显示按钮

javascript - 表重置后显示 JQuery UI 工具提示

javascript - 使用 projekktor/jquery/javascript 停止加载/缓冲视频

javascript - 当用户在选择器中选择类别时启用按钮

javascript - AngularJS 思考 - 在 AJAX 请求中修改 DOM 的正确方法是什么?

jquery - 是否有一个 jQuery 脚本可以显示带有自动刷新功能的 Twitter feed?

javascript - 未捕获的安全错误 : Failed to execute 'getImageData' on 'CanvasRenderingContext2D' :