Я скачал с твоим календарем и пошел прямо на завод.
Тем не менее, теперь я получаю следующую ошибку в updateEvent в консоли:
TypeError: e._d.getTime is not a function
это мой код:
var CalenderEvent;
var datenPruefenDatenSenden;
var terminPruefenDatenSenden;
var datenPruefenDatenVerarbeiten;
$(document).ready(function() {
function DeleteEvent(id){
SendFormData(id,'',"delete");
$('#calendar').fullCalendar('removeEvents',id);
}
var initialLocaleCode = 'de';
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay,listWeek'
},
dayClick: function(date, jsEvent, view) {
$('#calenderAdEvent').modal('show');
},
eventRender: function(eventObj, $el) {
$el.popover({
title: eventObj.title,
content: eventObj.description,
trigger: 'hover',
placement: 'top',
container: 'body'
});
$el.html(eventObj.title + '<span class="removebtn" onclick="DeleteEvent('+eventObj.id+');" id="Delete">X</span>');
$el.find(".removebtn").click(function() {
$('#calendar').fullCalendar('removeEvents',eventObj.id);
});
},
businessHours: [
{ dow: [ 1 ], start: '07:00', end: '20:00' } , { dow: [ 2 ], start: '07:00', end: '20:00' } , { dow: [ 3 ], start: '07:00', end: '20:00' } , { dow: [ 4 ], start: '07:00', end: '20:00' } , { dow: [ 5 ], start: '00:00', end: '00:00' } , { dow: [ 6 ], start: '00:00', end: '00:00' } , { dow: [ 7 ], start: '00:00', end: '00:00' } ],
eventDrop: function( event, delta, revertFunc, jsEvent, ui, view ) {
var Alertback = SendFormData(event.id,$.fullCalendar.moment(event.start._d), $.fullCalendar.moment(event.end._d),"update");
alert(Alertback);
},
eventResize: function( event, delta, revertFunc, jsEvent, ui, view ) {
var Alertback = SendFormData(event.id,$.fullCalendar.moment(event.start._d), $.fullCalendar.moment(event.end._d),"update");
alert(Alertback);
},
timezone: 'Europe/Berlin',
nowIndicator: true,
now: '2018-11-13T21:47:41',
locale: 'de',
buttonIcons: true, // show the prev/next text
defaultView: 'agendaWeek',
defaultDate: '2018-11-13',
navLinks: true, // can click day/week names to navigate views
editable: true,
eventLimit: true, // allow "more" link when too many events
allDaySlot: true,
droppable: true,
events: [
{
start: 1546884000000,
end: 1546887600000,
title: 'Nails Grundmodellage',
description: 'Schlegel Cassandra',
id: '1',
TimeEvent: '1:00:00'
}
,
{
start: 1546968600000,
end: 1546974000000,
title: 'Kosmetik 1,5h',
description: 'Hempel Gabriele',
id: '2',
TimeEvent: '1:50:00'
}
,
{
start: 1542362460000,
end: 1542373500000,
title: 'Nails Grundmodellage',
description: 'Laufer2 Eric2',
id: '20',
TimeEvent: '1:00:00'
}
,
{
start: 1542279660000,
end: 1542297660000,
title: 'Nails Grundmodellage',
description: 'Laufer2 Eric2',
id: '21',
TimeEvent: '1:00:00'
}
],
timeFormat: 'H(:mm)',
eventClick: function(event, jsEvent, view) {
CalenderEvent = event;
$('#id_termin').val(event.id);
$('#name').val(event.title);
$('#Time_Event').val(event.TimeEvent);
$('#description').val(event.description);
$('#start_date_day').val(moment(event.start).format('DD.MM.YYYY'));
$('#start_date_time').val(moment(event.start).format('HH:mm'));
if(event.end) {
$('#end_date_day').val(moment(event.end).format('DD.MM.YYYY'));
$('#end_date_time').val(moment(event.end).format('HH:mm'));
} else {
$('#end_date_day').val(moment(event.end).format('DD.MM.YYYY'));
$('#end_date_time').val(moment(event.end).format('HH:mm'));
}
$('#event_id').val(event.id);
$('#calenderEditEvent').modal();
}
});
datenPruefenDatenSenden = function(){
var start = $('#start_date_day').val()+'//'+$('#start_date_time').val();
var end = $('#end_date_day').val()+'//'+$('#end_date_time').val();
var erg = SendFormData($("#id_termin").val(),start,end,'TerminEditSave');
var sta = $('#start_date_day').val().split(".");
var ende = $('#start_date_day').val().split(".");
$('#calenderEditEvent').modal('hide');
console.log(sta[2]+'-'+sta[1]+'-'+sta[0]+'T'+$('#start_date_time').val());
CalenderEvent.start._d = $.fullCalendar.moment(sta[2]+'-'+sta[1]+'-'+sta[0]+'T'+$('#start_date_time').val());
CalenderEvent.end._d = $.fullCalendar.moment(ende[2]+'-'+ende[1]+'-'+ende[0]+'T'+$('#start_date_time').val());
console.log(CalenderEvent.start._d);
$('#calendar').fullCalendar('updateEvent', CalenderEvent);
}
datenPruefenDatenVerarbeiten = function (daten){
if(daten == 1){$('#submit_erg').html('<div class="alert alert-danger">Terminüberschneidung</div><button class="btn btn-info" onclick="terminPruefenDatenSenden();">Erneut prüfen</button>');}
$('#submit_button').html('<button type="button" class="btn btn-warning" onclick="datenPruefenDatenSenden();">Termin Speichern</button>');
}
terminPruefenDatenSenden = function (){
$('#submit_erg').html('');
var start = $('#start_date_day').val()+'//'+$('#start_date_time').val();
var end = $('#end_date_day').val()+'//'+$('#end_date_time').val();
var erg = SendFormData($("#id_termin").val(),start,end,'pruefen');
}
function termin_nachberechnung(){
var TimePlus = new Hour($('#Time_Event').val());
var zeit = new Hour($('#start_date_time').val()+':00');
$('#end_date_time').val(zeit.add(TimePlus));
}
});
$(function() {
$('[data-toggle="datepicker_bearbeiten"]').datepicker({
autoHide: true,
format: 'dd.mm.yyyy',
zIndex: 2048,
});
});
function SendFormData(id,start,end,aufruf){
var erg;
if(aufruf == 'update'){start = start/1000;end = end/1000;}
$.ajax({type: "post",url: "kalender2/kalender.class.php",data : {id : id,sta : start,end : end,aufruf : aufruf}
}).done(function( dataEnd ){if(aufruf == 'pruefen'){datenPruefenDatenVerarbeiten(dataEnd);}erg = dataEnd;});
return erg;
}
Я прочитал события, как показано здесь, а затем позволил им звонить через кнопку и eventClick. затем проверьте это с помощью php, а затем подает сигнал, если обновление возможно или нет.
Все работает до последней точки.
также дата написана правильно и проведена в консоли. к сожалению, тогда $ ('# calendar') вернется. fullCalendar ('updateEvent', CalenderEvent); в этой строке есть ошибка и обновление не производится. как только я извлекаю дату и позволяю только изменению названия и прохожу обновление, оно снова идет.
Понятия не имею, что не так с датой.