gpt4 book ai didi

javascript - 数据表未格式化日期时间

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

我有一个 id = 'att_tm_req' 的数据表。它在第一列中包含格式为

的日期
2018-09-06 16:04:00 UTC

我想以 DD/MM/YYY 格式显示它,月份名称为英文,而不是数字 MM 表示形式。

当我将以下 js 应用到我的表时:

document.addEventListener('turbolinks:load', function() {

$('#att_tm_req').DataTable( {
columnDefs: [ {
targets: 0,
render: $.fn.dataTable.render.moment( 'Do DD MMM YYYYY' )
} ]
} );
});

数据表显示:

Invalid date

每一行都曾经是完美的数据。我已经将 moment.js 文件添加到我的 application.js 中。接受任何和所有建议。

最佳答案

问题是moment.js 无法定义源日期时间格式

您的日期时间格式是:

YYYY-MM-DD HH:mm:ss UTC

那么您需要使用 DataRender Datetime plugin 的两 (2) 个参数和 moment.js这是:

$.fn.dataTable.render.moment( from, to );

你的代码应该像这样替换:

columnDefs: [{
targets: 1,
render: $.fn.dataTable.render.moment('YYYY-MM-DD HH:mm:ss UTC','Do DD MMM YYYYY')
}]

示例演示:

$(document).ready(function(){

$('#example').DataTable({
columnDefs: [{
targets: 1,
render: $.fn.dataTable.render.moment('YYYY-MM-DD HH:mm:ss UTC','Do DD MMM YYYYY')
}]
});

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script>
<script src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>
<script src="//cdn.datatables.net/plug-ins/1.10.19/dataRender/datetime.js"></script>
<link href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css" rel="stylesheet" />
<table id="example" class="display nowrap" width="100%">
<thead>
<tr>
<th>Date Before</th>
<th>Date After</th>
</tr>
</thead>
<tbody>
<tr>
<td>2018-09-06 16:04:00 UTC</td>
<td>2018-09-06 16:04:00 UTC</td>
</tr>
</tbody>
</table>

关于javascript - 数据表未格式化日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57395983/

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