【发布时间】:2023-03-15 07:19:02
【问题描述】:
我使用的是'FullCalendar' jQuery plugin,但是我的日期字符串数据的格式只有这种格式 dd-MMM-yyyy HH:mm:ss。
如何将其解析为 FullCalendar 插件,使其采用插件接受的适当日期格式之一?
我假设我需要使用formatDate,但我不知道如何或在哪里使用它。
【问题讨论】:
标签: jquery date fullcalendar
我使用的是'FullCalendar' jQuery plugin,但是我的日期字符串数据的格式只有这种格式 dd-MMM-yyyy HH:mm:ss。
如何将其解析为 FullCalendar 插件,使其采用插件接受的适当日期格式之一?
我假设我需要使用formatDate,但我不知道如何或在哪里使用它。
【问题讨论】:
标签: jquery date fullcalendar
如果你开始玩弄这样的日期格式,你会陷入痛苦的世界。
更新
根据您的 cmets,我会考虑重新格式化您的输入日期(在 javascript 中执行此操作)。 This question 展示了许多方法来做到这一点。
【讨论】:
尽管我想我可能会对此答案投反对票,但我们开始吧:-)
function myParseDate(indate){ //indate in your format eg. '15-September-2011 13:37:00'
var datearraytmp1 = indate.split('-');
var datearraytmp2 = datearraytmp1[2].split(' ');
var datearraytmp3 = datearraytmp2[1].split(':');
var datearray = [datearraytmp1[0], datearraytmp1[1], datearraytmp2[0], datearraytmp3[0], datearraytmp3[1], datearraytmp3[2]];
var jsDate = new Date(datearray[2], monthStringToNumber(datearray[1]), datearray[0], datearray[3], datearray[4], datearray[5], 0);
}
var monthNames = {"January":0, "February":1, "March":2, "April":3, "May":4, "June":5, "July":6, "August":7, "September":8, "October":9, "November":10, "December":11};
function monthStringToNumber(monthname) {
return monthNames[monthname];
}
这将为您提供 jsDate 作为 JavaScript 日期对象,您可以将其与 fullCalendar 一起使用而没有太多问题。注意,monthNames 需要更改为您的语言。
这是一个丑陋但有效的解决方案。
编辑:更简洁的解决方案是使用http://www.datejs.com/,它似乎可以很好地解析您的输入:P
【讨论】: