J'utilise le script FullCalendar et j'ai du mal à formater la date / l'heure des ÉVÉNEMENTS sur le calendrier.

J'ai besoin que toutes les données de date / heure des événements ressemblent à:

2011-09-28 08:15:00

Toutes les dates sont comme ça dans ma source JSON, qui s'affichent correctement sur le calendrier. Cependant, si l'événement est déplacé ou qu'un nouvel événement est ajouté (supprimé par un glissement éternel), le format d'heure ressemble à:

ven. 30 sept. 2011 14:30:00 GMT-0400 (EDT)

Il ne s'affiche pas dans ce format, mais il apparaît de cette façon lorsque j'essaie d'insérer event.start ou event.end dans ma base de données, ou lorsque je fais cela:

eventClick: function(event) {

alert("Event ID: " + event.id + " Start Date: " + event.start + " End Date: " + event.end);
}

Je l'utilise uniquement pour voir comment la date et l'heure sont enregistrées dans le calendrier. J'ai besoin de mettre à jour ma base de données avec de nouveaux événements, mais dans le format indiqué ci-dessus, mais j'ai du mal à le faire.

Comment utiliser la fonction formatDate? Je le vois dans la liste, et la raison pour laquelle je demande, c'est parce que je ne sais pas quoi en faire.

J'ai fait:

$.fullCalendar.formatDate(event.start, 'MM-dd-yyyy');

Mais cela ne fait rien ...

9
Oseer 29 sept. 2011 à 17:36

7 réponses

Meilleure réponse

Ce que j'ai fait, c'est de le mettre d'abord dans un var, mais ne semblait fonctionner qu'avec IE - FF produisait toujours le format IETF (ex: "Wed, 18 Oct 2009 13:00:00 EST"):

var formDate = $.fullCalendar.formatDate(event.start, 'MM-dd-yyyy');
alert(" Start Date: " + formDate);
2
Thomas Ayoub 4 oct. 2017 à 16:07

Q: Comment utiliser la fonction formatDate? Je le vois répertorié, la raison pour laquelle je pose la question est parce que je ne sais pas quoi en faire. J'ai fait: $ .fullCalendar.formatDate (event.start, 'MM-dd-yyyy'); Cela ne fait rien ...

Répondre :

Vous pouvez utiliser des ressemblances:

eventClick: function(event) {

alert("Event ID: " + event.id + " Start Date: " +  $.fullCalendar.formatDate(event.start, 'MM-dd-yyyy') + " End Date: " + event.end);
}
0
rails_id 16 avril 2013 à 07:59

J'ai trouvé votre réponse dans une question similaire, dans ici

Répondu par H.D:

dateStr = "Tue Aug 13 2013 18:00:00 GMT-0400 (EDT)"
(new Date(dateStr)).toISOString().slice(0, 10)

Il affichera: '2013-08-13'

(new Date(dateStr)).toISOString()

Il affichera: «2013-08-13T18: 00: 00.000Z»

0
Community 23 mai 2017 à 12:32

Si vous essayez de passer un objet date de java au calendrier complet et que vous utilisez Java 7 ou moins, la fonction ci-dessous fonctionnera pour vous.

Date date = nouvelle date ("passyourdatestring");

Date.toLocaleString ();

Et voici l'objet d'événement.

{

id: '_jobName' ,
url: 'url ',
title: 'title',
allDay: 'false',
description: 'displayname',
start': 'schedDateTime',
end: date.toLocaleString()

};

0
Vaibhav Jain 3 juin 2015 à 14:24

Utilisez simplement le code suivant avant de rendre vos événements:

start=moment(start).format('YYYY/MM/DD hh:mm');
end=moment(end).format('YYYY/MM/DD hh:mm');

Assurez-vous que vous utilisez moment.js.

13
Jamal 3 oct. 2014 à 02:35

Consultez formatDate et parseDate et cela résoudra probablement vos problèmes.

0
Magnus Winter 29 sept. 2011 à 17:30

J'ai utilisé le code ci-dessous lors du rendu de l'événement sur le calendrier.

J'espère que ce code vous aidera.

  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>");
}

Assurez-vous que vous utilisez moment.js

1
Kamil Budziewski 8 sept. 2015 à 06:00