2010-08-26 6 views
1

J'utilise fullcalendar télécharger dates fois à ma base de données et j'ai le script suivantPasser la valeur de date dans fullcalendar

 $dialogContent.dialog({ 
     modal: true, 
     title: "New Listing", 
     close: function() { 
      $dialogContent.dialog("destroy"); 
      $dialogContent.hide(); 
     }, 
     buttons: { 
      save : function() { 
       calEvent.id = id; 
       id++; 
       calEvent.start = new Date(startField.val()); 
       calEvent.end = new Date(endField.val()); 
       calEvent.title = titleField.val(); 
       calEvent.body = bodyField.val(); 

     $.ajax({ 


type: "POST", 
    url: "addnew.php", 
    data: (
    { 
    'st':new Date(startField.val()), 
    'et':new Date(endField.val()), 
    'title':titleField.val(), 
    'body':bodyField.val() 
    } 
    ), 

    success: function(msg){ 
    alert("Data Saved: " + msg); 
    } 
}); 

Cependant mes valeurs de date ne sont pas envoyés à tous. C'est faux mais je ne sais pas comment ni pourquoi.

Répondre

-1

Il est tard et je n'ai pas utilisé Javascript dans un certain temps, mais sûrement il est input.value pas input.val()

+0

Non, dans jQuery, la méthode '.val()' renverra la valeur d'un élément quel que soit son type, par exemple en JavaScript pour obtenir l'élément sélectionné d'une zone de sélection 'selectedIndex'. Non seulement cela rend les choses plus cohérentes pour le développeur, mais aussi cohérentes en ce qui concerne la prise en charge du navigateur. –

0

le constructeur Date ne Parse pas ancienne chaîne de date. utiliser la fonction d'analyse syntaxique de fullCalendar à la place (à condition que vous utilisez le format ISO8061):

http://arshaw.com/fullcalendar/docs/utilities/parseDate/

+0

J'ai joué avec ça mais je ne vois toujours pas comment porter la chaîne sur ma page d'action. J'ai essayé des variations de ce .ajax $ ({ Type: "POST", url: "addnew.php", données:. ( { 'st' $ fullCalendar.parseDate (startField.val()) :, 'title': titleField.val(), 'corps'. bodyField.val() } ), Mais je n'ai toujours pas sussed Merci – Arial

0

Quelle est la valeur de la date que vous obtenez dans le côté serveur? Peut être, vous devez envoyer un type de données simple comme l'horodatage UNIX ou en utilisant .serialize() pour votre formulaire.

0

J'ai joué avec ParseDate mais je ne reçois pas de résultats, semble avoir tout faux;

dayClick : function(date, allDay, jsEvent, view) { 
    var $dialogContent = $("#event_edit_container"); 

      y = date.getFullYear(); 
      m = date.getMonth(); 
      d = date.getDate(); 

      h1 = date.getHours(); 
      m1 = date.getMinutes(); 

      h2 = h1 + 1; 
      m2 = m1; 

      calEvent = { title: 'New Calendar Event', editable:true, distributor: '', etype: '', location: '', website: '', start: new Date(y, m, d, h1, m1), end: new Date(y, m, d, h2, m2), allDay: false }; 
     $calendar.fullCalendar("renderEvent",calEvent, true); 

    resetForm($dialogContent); 

    var startField = $dialogContent.find("select[name='start']").val(calEvent.start); 
    var endField = $dialogContent.find("select[name='end']").val(calEvent.end); 
    var titleField = $dialogContent.find("input[name='title']").val(calEvent.title); 
    var distributorField = $dialogContent.find("input[name='distributor']").val(calEvent.distributor); 
    var etypeField = $dialogContent.find("select[name='etype']").val(calEvent.etype); 
    var locationField = $dialogContent.find("input[name='location']").val(calEvent.location); 
    var websiteField = $dialogContent.find("input[name='website']").val(calEvent.website); 
    var bodyField = $dialogContent.find("textarea[name='body']"); 
    //var start_date = eval($.fullCalendar.parseDate(this_one['start']).getTime())/1000; 



    $dialogContent.dialog({ 
     modal: true, 
     title: "New Listing", 
     close: function() { 
      $dialogContent.dialog("destroy"); 
      $dialogContent.hide(); 
     }, 
     buttons: { 
      save : function() { 
       calEvent.id = id; 
       id++; 
       calEvent.start = $.fullCalendar.parseDate(new Date(startField.val())); 
       calEvent.end = new Date(endField.val()); 
       calEvent.title = titleField.val(); 
       calEvent.distributor = distributorField.val(); 
       calEvent.etype = etypeField.val(); 
       calEvent.location = locationField.val(); 
       calEvent.website = websiteField.val(); 
       calEvent.body = bodyField.val(); 
       //$.fullCalendar.parseDate(calEvent.start); 

       //calEvent.st = start_date.val(); 
       //$.fullCalendar.parseDate(startField.val()); 
     $.ajax({ 

Type: "POST", url: "addnew.php", données: ( { 'st': calEvent.start, 'et': new Date (endField.val()), 'title': titleField.val(), 'distributeur': distributorField.val(), 'etype': etypeField.val(), 'emplacement': locationField.val(), 'site' : websiteField.val(), 'body': bodyField.val() } ),

succès: fonction (msg) { alert ("Data Saved:" + msg); } });

Je suis à un mur de briques avec ce que j'ai essayé des tonnes de variations de code hte, mais c'est juste deviner le travail. S'il y a un exemple de la date de dépôt ou d'impression, j'apprécierais vraiment de voir comment cela devrait fonctionner. L'essai et l'erreur ne fonctionnent pas pour moi dans ce cas. Merci

Questions connexes