Bootstrap 表:按日期字段排序

新手上路,请多包涵

我正在使用这个 Bootstrap 表插件。但是按日期排序不能正常工作。

这是代码:

 <table class=" table-striped" id="table" data-toggle="table"
    data-search="true"
    data-filter-control="true"
    data-click-to-select="true"
    data-escape="false">

    <thead>
        <tr>
            <th data-field="expiry_date" data-sortable="true" scope="col"><?= 'expiry date' ?></th>
        </tr>
    </thead>

日期格式如下: d/m/y (17/7/14)

我该如何修复它才能正确排序日期?

原文由 netdev 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 485
2 个回答

您必须使用具有“数据排序器”属性的自定义排序器,例如 data-sorter="datesSorter"

然后满足您的需求:

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

原文由 PHPnoob 发布,翻译遵循 CC BY-SA 4.0 许可协议

放在 <td> 内容的开头日期转换成数字这样

<span style="display:none">{{strtotime($date)}}</span>

原文由 Diego Gandino 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题