无法在fullcalendar中保存事件

时间:2014-09-17 18:28:48

标签: javascript fullcalendar

我可以将事件保存在我的数据库中,但它会保存不同的日期。

当我点击日期时,它会询问事件名称并保存。该事件将保存在当天的当前日期,而不是我选择/单击的那一天。

此外,它在数据库中保存的时间取决于计算机的当前时间。

我正在使用v2.1

这是我的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8' />
<link href='css/fullcalendar.css' rel='stylesheet' />
<link href='css/fullcalendar.print.css' rel='stylesheet' media='print' />
<script src='js/moment.min.js'></script>
<script src='js/jquery.min.js'></script>
<script src='js/fullcalendar.min.js'></script>


<script>

$(document).ready(function() {

    var calendar = $('#calendar').fullCalendar({

        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },

        editable: true,
        events:  "http://localhost/fullcalendar/events.php",
        selectable:true,

        select: function(start,end,title,date){
            var title = prompt('Event Title:');
            //var eventData;
            if(title){
                 var start = $.fullCalendar.moment().format();
                 var end = $.fullCalendar.moment().format();
                 $.ajax({
                        url:'http://localhost/fullcalendar/add_events.php',
                        data: 'title=' + title +'&start='+ start +'&end='+ end,
                        type:"POST",
                        success: function(json){
                            alert('Added Sucessfully');
                        }   

                 });



                 eventData = {
                        title:title,
                        start:start,
                        end:end,

                 };
                 $('#calendar').fullCalendar('renderEvent', eventData, true); //this makes the event stick on the calendar but not save on the database
            }
                $('#calendar').fullCalendar('unselect');
        },

        eventLimit:true,        



    });


});

 </script>
 <style>

body {
    margin: 0;
    padding: 0;
    font-family: "Lucida Grande",Helvetica,Arial,Verdana,sans-serif;
    font-size: 14px;
}

#calendar {
    width: 900px;
    margin: 40px auto;
}

</style>
</head>
<body>

<div id='calendar'></div>

</body>
</html>

2 个答案:

答案 0 :(得分:1)

select函数中,您有以下代码:

var start = $.fullCalendar.moment().format();
var end = $.fullCalendar.moment().format();

这意味着您要覆盖startend参数。在使用时,startend将包含当前日期时间,而不是用户选择的日期时间。

如果删除这两行,它应该按预期工作。

答案 1 :(得分:0)

var start = $.fullCalendar.moment(start).format(YYYY/MM/DD);

var end = $.fullCalendar.moment(end).format(YYYY/MM/DD);