1

我正在使用 Matt Kruse 的基于 Javascript 的客户端表格排序器。它的使用和设置非常简单,而且非常有用。但是,虽然我可以将表格设置为默认使用第二列排序,但"class='table-autosort:1"我似乎无法让它默认按降序排序。

我希望它是可行的,只是没有记录。如果没有,有没有人有一个聪明的解决方案?

4

2 回答 2

0

我认为有一个错误(或两个在table.js)。

如果替换第 909 行:

tdata.sorttype=Sort['"+type+"'];

和:

tdata.sorttype=Sort[type];

然后添加这一行:

args.sorttype = tdata.sorttype;

在第 915 行之前(目前):

table.sort(t,args);

然后我相信默认排序应该可以正常工作。

现在,您需要一个执行降序排序的方法,例如:

<script type="text/javascript">
    Sort['default_descending'] = function(a, b) {
        return (a==b)?0:(a>b)?-1:1;
  }
</script>

确保在包含的文件之后包含此table.js内容。

现在,您需要为表中的列提供适当的类(类似于):

<th class="table-sortable:default_descending">Text</th>

如果您将此类用于自动排序列,它现在应该自动降序排序。

[我给作者发了邮件让他知道这个错误]

于 2013-07-02T21:39:35.573 回答
0

我想到了。为了能够降序排序,只需将mysql查询更改为order by field_name desc; 仅此一项不会解决您的问题,您需要从排序类中删除数字"class='table-autosort:1""class='table-autosort"

于 2021-05-17T12:02:45.563 回答