2016-11-06 29 views
1

所以我使用数据表和他们的moment.js插件(https://datatables.net/plug-ins/dataRender/datetime)。我总是得到(字符串)“无效日期”返回...如何用Datatables和moment.js解析这个时间字符串?

{ "data": "last_updated", //source: 2016-11-02 10:32pm GMT 
render: $.fn.dataTable.render.moment('YY-MM-DD hh:mmtt GMT', 'DD MMM YY') 
} 

谢谢!

+0

什么是“无效日期”? –

+0

哦对不起:我得到的回报是:“日期无效” - 当js无法分析输入时,它是默认输出。 –

+0

您输入的内容可能不是您期望的内容 –

回答

3

该插件需要一个,两个或三个参数。从测试看来,好像你的日期是有效的,所以我建议只是将“SS MMM YY”传递给函数。作为一个简单的例子,这似乎工作:

moment("2016-11-02 10:32pm GMT").format("DD MMM YY"); // "02 Nov 16" 

另一个问题可能是,未设定日期,所以它也许值得一试空值和设置一些默认的内容。事实上,如果你已经有了jj可用,你可以用这个替换插件作为渲染功能:

"render": function(data){ 
    return (moment(data).isValid()) ? moment(data).format("DD MMM YY") : "-"; 
} 

希望有所帮助。