ブートストラップモーダルを使用してバックグラウンドイベントをFullCalendarに追加する際に、少し問題があります。バックグラウンドイベントは、ブートストラップモーダルによって作成されたときレンダリングされません。
私はこのような単純なイベント・データとバックグラウンドイベント(working jsfiddle)をレンダリングすることができるよ:
var eventData = {
start: '2016-10-01',
end: '2016-10-04',
rendering: 'background',
color: '#ff9f89'
};
$('#calendar').fullCalendar('renderEvent', eventData, true);`
また、私はタイトルのために迅速かつ基づいて、追加のルールを使用して、これを行うことができますよタイトル(working fiddle)上:
select: function(start, end) {
var title = prompt('Event Title:');
var eventData;
if (title) {
if (title === "holiday"){
eventData = {
start: start,
end: end,
rendering: 'background',
color: '#ff9f89'
};
}
else{
eventData = {
title: title,
start: start,
end: end
};
}
}
$('#calendar').fullCalendar('renderEvent', eventData, true); // stick? = true
$('#calendar').fullCalendar('unselect');
}
次のコードは、(fiddle)動作するはずですが、それはできません。モーダルを通じて通常のイベントを追加することは問題ではありませんが、バックグラウンドイベントの場合は何も起こりません。方程式からrendering: 'background',
を取り除くと動作します。何らかの理由でその行に問題があります。
しかし、バックグラウンドイベントは、初期化やカレンダーの外で完全に正常に動作し、selectを使用して正常に動作すると、通常のイベントとは異なる動作をします。
select: function(start, end) {
$('#calendarModal').modal('show');
$('#calendarModal #startTime').val(start);
$('#calendarModal #endTime').val(end);
}
// ...
$('#calendarModal').on('click', '#save', function(){
var title = $('#calendarModal #title').val();
var start = new Date($('#calendarModal #startTime').val());
var end = new Date($('#calendarModal #endTime').val());
var eventData;
if (title){
if (title === "holiday"){
eventData = {
start: start,
end: end,
rendering: 'background',
color: '#ff9f89'
};
}
else{
eventData = {
title: title,
start: start,
end: end
};
}
}
$('#calendar').fullCalendar('renderEvent', eventData, true); // stick? = true
$('#calendar').fullCalendar('unselect');
$('#calendarModal').modal('hide');
});
これを解決する方法はありますか?
正しく動作しているようで、あなたのフィドルが正しく動作しています。 'agendaWeek'を使っていますか?タイムアウトしたドキュメント_Backgroundイベントからは、アジェンダビューのタイムスロットにのみレンダリングされます。終日のバックグラウンドイベントは、月表示またはアジェンダビューの終日スロットでのみレンダリングされます._ –
@milz「休日」と入力するとバックグラウンドイベントが作成されます。モーダルではアジェンダのビューでは作成されますが、月のビューでは作成されませんが、プロンプトでは月のビューでも作成されます。 –