FullCalendar日期格式

Fra*_*ois 5 javascript fullcalendar

想要找到在FullCalendar中更改默认日期格式的方法.

实际上,它是:
2013年8月13日星期二18:00:00 GMT-0400(美国东部时间)

我想:
2013-08-13

谢谢.

H.D*_*.D. 9

有关FullCalendar的特定信息,您可能需要看到这一点,它为您提供了一些格式化规则.有一些更多的信息在这里,可能是有用的.


但是,如果您需要在FullCalendar和其他软件包或您自己的代码之间的接口中使用此日期格式,则可以直接使用JavaScript:

如果你想要"今天",你可以(小心,因为那将是客户端):

> (new Date()).toISOString().slice(0, 10)
'2013-08-31'
Run Code Online (Sandbox Code Playgroud)

从你说的字符串,你可以:

> dateStr = "Tue Aug 13 2013 18:00:00 GMT-0400 (EDT)"
> (new Date(dateStr)).toISOString().slice(0, 10)
'2013-08-13'
Run Code Online (Sandbox Code Playgroud)

两者都会以UTC的形式提供ISO日期.对于区域设置日期,您应该在使用之前将时间对象"移动"到UTC .toISOString.让:

> dateStr = "Mon Aug 12 2013 22:00:00 GMT-0400 (EDT)"
> dateObj = new Date(dateStr) /* Or empty, for today */
> dateIntNTZ = dateObj.getTime() - dateObj.getTimezoneOffset() * 60 * 1000
> dateObjNTZ = new Date(dateIntNTZ)
> dateObjNTZ.toISOString().slice(0, 10)
'2013-08-12'
Run Code Online (Sandbox Code Playgroud)

Locale仍然可以与你的例子中给出的GMT-0400不同(这里是GMT-0300,最后它给出了我在这个例子中的1小时后).


我将在这里复制第一个FullCalendar链接中的信息,我说:

formatDate

将Date对象格式化为字符串.

$.fullCalendar.formatDate( date, formatString [, options ] ) -> String
Run Code Online (Sandbox Code Playgroud)

在1.3版之前,formatDate接受了一种非常不同的格式.看到这里.

formatString 是以下任何命令的组合:

  • s - 秒
  • ss - 秒,2位数
  • m - 分钟
  • 毫米 - 分钟,2位数
  • h - 小时,12小时格式
  • hh - 小时,12小时格式,2位数
  • H小时,24小时格式
  • HH - 小时,24小时格式,2位数
  • d - 日期编号
  • dd - 日期编号,2位数
  • ddd - 日期名称,简称
  • dddd - 日期名称,完整
  • M - 月份数
  • MM - 月份数,2位数
  • MMM - 月份名称,简称
  • MMMM - 月份名称,完整
  • yy - 年,2位数
  • yyyy - 年,4位数
  • t - 'a'或'p'
  • tt - 'am'或'pm'
  • T - 'A'或'P'
  • TT - 'AM'或'PM'
  • u - ISO8601格式
  • S - 'st','nd','rd','th'为日期
  • W - ISO8601周数

特殊字符:

'...' 文字

'' 单引号(由两个单引号表示)

(...) 仅当其中一个封闭变量为非零时才显示格式

options参数可用于覆盖默认语言环境选项,例如monthNames,monthNamesShort,dayNamesdayNamesShort.