使用 jQuery tablesorter 2.3 禁用升序排序

问题描述 投票:0回答:1

是否可以禁用 jQuery 插件表格排序器上的升序排序?

我试图在单击时获取表头以降序排序或不排序并跳过升序排序。

请注意,我见过的其他帖子讨论了初始排序顺序和锁定顺序,这些解决方案不是我想要的。我希望表格最初是未排序的,并且我希望标题列在单击时在未排序和降序排序之间循环。

提前致谢。

javascript jquery tablesorter
1个回答
0
投票

根据jQuery tablesorte 文档了解锁定排序顺序:

可以使用以下任何一种方法来锁定列(它们都可以 相同的事情),按优先级顺序(v2.3+):

  • jQuery 数据
    data-lockedorder="asc"
    。 (相当于 data-locked-order="asc")。
  • 元数据
    class="{ lockedOrder: 'asc'}"
    。这需要元数据插件。
  • 标题选项
    headers: { 0 : { lockedOrder: 'asc' } }
  • 标头类名
    class="lockedOrder-asc"

您可以将值设置为

desc
表示降序,而不是
asc
表示升序。

$(function() {
  $("table").tablesorter({
    theme : 'blue',
    // pass the headers argument and passing a object
    headers: {
      0: {
        // lock the sort order of the first column to descending
        lockedOrder: 'desc'
      },
      1: {
        // lock the sort order of the second column to descending
        lockedOrder: 'desc'
      }
    }
  });
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.31.3/css/theme.blue.min.css" rel="stylesheet"/>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.31.3/js/jquery.tablesorter.min.js"></script>
<table class="tablesorter">
  <thead>
    <tr>
      <th>First Name</th>
      <th>Last Name</th>
      <th data-lockedorder="desc">Age</th> <!-- added as data-lockedOrder, but the DOM changes it to data-lockedorder -->
      <th>Total</th>
      <th class="lockedOrder-desc">Discount</th>
      <th>Date</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Peter</td>
      <td>Parker</td>
      <td>28</td>
      <td>$9.99</td>
      <td>20%</td>
      <td>Jul 6, 2006 8:14 AM</td>
    </tr>
    <tr>
      <td>John</td>
      <td>Hood</td>
      <td>33</td>
      <td>$19.99</td>
      <td>25%</td>
      <td>Dec 10, 2002 5:14 AM</td>
    </tr>
    <tr>
      <td>Clark</td>
      <td>Kent</td>
      <td>18</td>
      <td>$15.89</td>
      <td>44%</td>
      <td>Jan 12, 2003 11:14 AM</td>
    </tr>
    <tr>
      <td>Bruce</td>
      <td>Almighty</td>
      <td>45</td>
      <td>$153.19</td>
      <td>44%</td>
      <td>Jan 18, 2001 9:12 AM</td>
    </tr>
    <tr>
      <td>Bruce</td>
      <td>Evans</td>
      <td>22</td>
      <td>$13.19</td>
      <td>11%</td>
      <td>Jan 18, 2007 9:12 AM</td>
    </tr>
  </tbody>
</table>

© www.soinside.com 2019 - 2024. All rights reserved.