gpt4 book ai didi

javascript - jQuery 数据表插件 : Sort German date

转载 作者:行者123 更新时间:2023-12-01 02:27:56 25 4
gpt4 key购买 nike

我使用 jQuery DataTables 插件,我的问题是我的德国日期没有正确排序。它具有以下格式:dd.mm.YYYY HH:iih

这是我的代码:

JSFIDDLE:

https://jsfiddle.net/uxaLn1e3/3/

HTML:

    <table id="my-table">
<thead>
<th>Nr. </th>
<th>Date</th>
<th>Name</th>
</thead>
<tr>
<td>1</td>
<td>27.08.2015 19:00h</td>
<td>Carl</td>
</tr>
<tr>
<td>2</td>
<td>10.02.2016 14:00h</td>
<td>Alan</td>
</tr>
<tr>
<td>3</td>
<td>07.12.2015 21:00h</td>
<td>Bobby</td>
</tr>
</table>

JS(更新,使用ajax):

     $('#my-table').DataTable({
"ajax": 'my_url',
"columns": [
{"data": "nr"},
{"data": "date"},
{"data": "name"}
],
"autoWidth": false,
"order": [],
"fnCreatedRow": function( nRow, aData, iDataIndex ) {
var dateFull = aData.date;
var dateFullItems = dateFull.split(' ');
var dateDatum = dateFullItems[0];
var dateDatumItems = dateDatum.split('.');
var dateTime = dateFullItems[1];
var dateFormat = dateDatumItems[2] + '-' + dateDatumItems[1] + '-' + dateDatumItems[0] + 'T' + dateTime + ':00Z';

$(nRow).find('td:nth-of-type(2)').attr('data-sort', dateFormat);
},
});

我需要在 JS 中进行哪些调整才能使日期排序起作用?

最佳答案

td 添加一个 data-sort 属性,该属性以标准格式存储日期(我在这里使用了 ISO 格式,即 YYYY-MM-DDTHH :ii:ssZ ):

<tr>
<td>1</td>
<td data-sort="2015-08-27T19:00:00Z">27.08.2015 19:00h</td>
<td>Carl</td>
</tr>
<tr>
<td>2</td>
<td data-sort="2016-02-10T14:00:00Z">10.02.2016 14:00h</td>
<td>Alan</td>
</tr>
<tr>
<td>3</td>
<td data-sort="2015-12-07T21:00:00Z">07.12.2015 21:00h</td>
<td>Bobby</td>
</tr>

现在,datatables 将考虑此 data-sort 值而不是 td 的 html 对列进行排序。

Live Fiddle

即使您动态创建表,也可以通过两种方式实现此目的:

A.生成 html 时添加 data-sort 属性。

B.使用 jQuery 创建数据表后添加数据排序,然后重新初始化数据表。

关于javascript - jQuery 数据表插件 : Sort German date,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36467975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com