Обработка даты и времени FullCalendar
Я использую сценарий FullCalendar и у меня возникли проблемы с форматированием даты / времени событий в календаре.
мне нужны все данные даты/времени событий, чтобы выглядеть так:
2011-09-28 08:15:00
все даты похожи на это в моем источнике JSON, которые отображаются в календаре правильно. Однако, если событие перемещено или добавлено новое событие (удалено вечным перетаскиванием), формат времени выглядит например:
Пт 30 сентября 2011 14:30: 00 GMT-0400 (EDT)
он не отображается в этом формате, но он появляется таким образом, когда я пытаюсь вставить событие.начало или событие.end в мою базу данных, или когда я это сделаю:
eventClick: function(event) {
alert("Event ID: " + event.id + " Start Date: " + event.start + " End Date: " + event.end);
}
Я использую это, только чтобы увидеть, как дата и время сохраняются в календаре. Мне нужно обновить базу данных новыми событиями, но в формате, показанном выше, но у меня возникли проблемы этот.
как использовать
7 ответов
то, что я сделал, это сначала поместить его в var, но только казалось, что работает в IE-FF по-прежнему производится формат IETF (например: "Wed, 18 Oct 2009 13: 00: 00 EST"):
var formDate = $.fullCalendar.formatDate(event.start, 'MM-dd-yyyy');
alert(" Start Date: " + formDate);
просто используйте следующий код перед отображением событий:
start=moment(start).format('YYYY/MM/DD hh:mm');
end=moment(end).format('YYYY/MM/DD hh:mm');
убедитесь, что вы используете момент.js.
проверить formatDate и parseDate и это, вероятно, решит ваши проблемы.
Q: Как использовать функцию formatDate? Я вижу его в списке, почему я спрашиваю, потому что я не знаю что с этим делать. Я сделал: $.fullCalendar.formatDate (event.начинай: "ММ-ДД-гггг"); Это ничего не значит...
ответ :
вы можете использовать look likes:
eventClick: function(event) {
alert("Event ID: " + event.id + " Start Date: " + $.fullCalendar.formatDate(event.start, 'MM-dd-yyyy') + " End Date: " + event.end);
}
Я нашел ваш ответ в аналогичном вопросе, в здесь
ответил H. D:
dateStr = "Tue Aug 13 2013 18:00:00 GMT-0400 (EDT)"
(new Date(dateStr)).toISOString().slice(0, 10)
он отобразит: '2013-08-13'
(new Date(dateStr)).toISOString()
он отобразит: '2013-08-13T18: 00: 00.000 Z'
Если вы пытаетесь передать объект date из java в полный календарь и используете Java 7 или меньше, функция ниже будет работать для вас.
Date date= новая дата ("passyourdatestring");
дата.методом tolocalestring();
и следующим будет объект события.
{
id: '_jobName' ,
url: 'url ',
title: 'title',
allDay: 'false',
description: 'displayname',
start': 'schedDateTime',
end: date.toLocaleString()
};
я использовал ниже код при рендеринге события в календаре.
надеюсь, этот код поможет вам.
eventRender: function(event, element) {
eventsdate = moment(event.start).format('hh:mm a');
eventedate = moment(event.end).format('hh:mm a');
element.find('.fc-time').html(eventsdate + " - " + eventedate + "<br>");
}
убедитесь, что вы используете момент.js