Добавление событий полного календаря с помощью datetimepicker

#php #jquery #jquery-ui #fullcalendar #datetimepicker

#php #jquery — запрос #jquery-пользовательский интерфейс #полный календарь #datetimepicker #jquery

Вопрос:

Есть ли способ добавить событие в fullcalendar с помощью datetimepicker (http://trentrichardson.com/examples/timepicker /)?
Мне нужна кнопка, которая будет отображать datetimepicker onclick, а затем пользователь может выбрать дату и время и вставить их в базу данных, связанную с fullcalendar.

Это мой полный календарный код (его часть):

 events: {
    url: 'events.php',
    cache: true,
    type: 'POST',
    data:{userid:uid}
},

eventRender: function(event, element, view) {
    if(event.status == 'open') {
        element.css('background-color', 'green');
    }
},
selectable: true,
selectHelper: true,
select: function(start, end, allDay) {
    var status = 'open';
    var userid= <?php echo "$userid"; ?>;
    if (status) {
        var start = $.fullCalendar.formatDate(start, "yyyy-MM-dd HH:mm:ss");
        var end = $.fullCalendar.formatDate(end, "yyyy-MM-dd HH:mm:ss");
        $.ajax({
            url: 'events_add.php',
            data: 'status='  status 'amp;start='  start  'amp;end='  end  'amp;userid='  userid,
            type: "POST",
            success: function(json) {
                alert('Added Successfully');
            }
        });
        calendar.fullCalendar('renderEvent',{
            title: title,
            status: status,
            start: start,
            end: end,
            allDay: allDay
        },
        true);
    }
    calendar.fullCalendar('unselect');
},
  

и вызов datetimepicker:

 $('#datepicker').datetimepicker();
  

Ответ №1:

Попробуйте использовать, как показано ниже, для получения даты события используйте эквивалентный метод из вашего плагина datetimepicker вместо ‘onSelect:’;

     var event = {eventName:'aaaa', title:'bbbb'}; // sample event stored 
onSelect:function (dateText, inst) {
    addEvent(event, $(this).datepicker('getDate'));
}

function(event, date){
    var copiedEventObject = $.extend({}, event);
    copiedEventObject.start = date;
    $('#calendar').fullCalendar('renderEvent', copiedEventObject, true);

}