【问题标题】:Bootstrap Table sort by date dd/mm/yyy引导表按日期 dd/mm/yyyy 排序
【发布时间】:2022-04-14 14:57:28
【问题描述】:

我有一列日期为 dd/mm/yyyy 格式(引导表)

<th data-field="modified" data-sortable="true">Date</th>

喜欢:

02/03/2020
10/04/2020
09/07/2019
01/07/2018

但排序不是按整个日期进行,而是按第一个数字(天)进行

01/07/2018
02/03/2020
09/07/2019
10/04/2020

我找到了带有 jquery 函数的 data-sorter 参数:

<th data-field="modified" data-sortable="true" data-sorter="starsSorter">Date</th>

function starsSorter(a, b) {
  if (new Date(a.toDate()) < new Date(b.toDate())) return 1;
  if (new Date(a.toDate()) > new Date(b.toDate())) return -1;
  return 0;
}

但它不工作:(

请帮帮我:)

【问题讨论】:

  • 可能需要定义sorter函数才能参考?不过,只是猜测。
  • 试过了。一样的:(

标签: bootstrap-table


【解决方案1】:

这很简单,您尝试在字符串上调用toDate 函数。 参数ab 是字符串(日期为字符串)。

这很好用:

function starsSorter(a, b) {
  if (new Date(a) > new Date(b)) return 1;
  if (new Date(a) < new Date(b)) return -1;
  return 0;
}

你可以在这里测试它:https://live.bootstrap-table.com/code/UtechtDustin/4216

【讨论】:

    【解决方案2】:

    或将数据打印为日期时间戳以进行排序,例如在 Django 中:

    <td data-value="{{ transaction.date|date:"U" }}">{{ transaction.date }}</td>
    

    【讨论】:

      猜你喜欢
      • 2014-11-25
      • 1970-01-01
      • 2012-08-13
      • 2016-01-02
      • 1970-01-01
      • 2019-07-02
      • 2016-12-25
      • 1970-01-01
      相关资源
      最近更新 更多