Ich habe Vollkalender v2 Ressourcen Kalender implementiert. Was ich nicht beheben kann, ist die Einstellung minTime und maxTime basierend auf dem Tag. Jeder Tag hat unterschiedliche Arbeitszeiten.Vollkalender setzen minTime und maxTime dynamisch
Montag 10.00 bis 14.00
Dienstag 16:00 bis 24:00 ...
Ich hatte meinen Kalender auf diese Weise initilized:
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,resourceDay'
},
defaultView: 'resourceDay',
titleFormat: {'day':'dddd, MMMM D'},
minTime: "08:00",
maxTime: "20:00",
scrollTime: moment().format('H:m'),
eventLimit: true, // allow "more" link when too many events
resources:[
resource1,resource2
],
slotDuration: '00:15:00',
allDaySlot: false,
lazyFetching: false,
droppable: true,
defaultTimedEventDuration: '00:30:00',
selectable: true,
selectHelper: true,
unselectAuto: 'true',
timeFormat: {'agenda':'hh:mm A','':'hh:mm A'},
// Calender Method-1: AJAX events will loaded from this code
events:function(start, end, timezone,callback) {
$.ajax({
url: "http://www.domainn.com/dashboard/index",
dataType: 'json',
type:'POST',
// async: false, //blocks window close
data: {
start: start.unix(),
end: end.unix(),
viewtype: $('#calendar').fullCalendar('getView').name,
},
success:function(response){
var calendarOptions = $('#calendar').fullCalendar('getView').calendar.options;
// console.log(calendarOptions);
calendarOptions.minTime = response.timings.start;
calendarOptions.maxTime = response.timings.end;
$('#calendar').fullCalendar('destroy');
$("#calendar").fullCalendar(
$.extend(calendarOptions, {
events:response.resources
})
);
}
});
},
eventRender: function (event, element) {
// code here
},
// other events follows.....
});
Von diesem Ajax Anruf und basierend auf dem Tag bekomme ich dynamische Arbeitszeiten für diesen bestimmten Tag und versuchen, es mit
einzustellenresponse.timings.start
response.timings.end
Aber mit diesen Optionen und dann ändern/goingTo jeden anderen Tag, ruft nicht die Ereignisse! Grundsätzlich ruft es die gleiche Funktion unendlich oft in einer Schleife auf.
versuchte viele Optionen, aber kein Glück. Jede Hilfe/Anleitung wird sehr geschätzt. Vielen Dank.
können Sie ein funktionierendes https://jsfiddle.net/ hinzufügen? – fehrlich
Hast du das gelöst? Wenn Sie Version 2.9.0 von FC nicht verwenden können, sollten Sie, nachdem Sie die Mindest- und Höchstzeiten festgelegt haben, die Ereignisse abrufen können, die $ ('# calendar') aufrufen. FullCalendar ('render'); anstatt den Kalender zu zerstören. –