问题描述
我正在创建一个完整的日历,它通过在 events
属性中设置的函数调用来检索事件。
这是完整的日历定义(在显示模式对话框时创建):
var calendarCreated = false;
$('#modal_calendar').on('shown.bs.modal',function () {
$(this).find('.card-header').draggable();
if (!calendarCreated) {
$('[data-toggle="calendar"]').fullCalendar({
themeSystem: 'bootstrap4',locale: 'es',monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic'],dayNames: ['Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sábado'],dayNamesShort: ['Dom','Lun','Mié','Jue','Vie','Sáb'],header: {
left: 'title',center: '',right: 'prev,next today'
},buttonText: {
today: 'Hoy',month: 'Mes',week: 'Semana',day: 'Día'
},events: '/myurl',eventRender: function (eventObj,$el) {
$el.popover({
title: 'Menú ' + eventObj.title,content: eventObj.description,trigger: 'hover',placement: 'top',container: 'body'
});
},});
calendarCreated = true;
}
});
返回的 JSON 对象包含正确的事件名称,例如,
注意 title
值。好吧,这就是日历的实际显示方式(活动开始日期是 4 月 28 日 00:00):
注意添加在事件名称之前的 4a
文本。为什么会这样,我该如何摆脱它?
解决方法
事件标题之前的文本是根据插件配置格式化的事件时间。 默认情况下,它具有每个语言环境的值。在您的代码中指定“es”。 '4a' 代表凌晨 4 点。 timeFormat 选项允许您修改它。例如,
timeFormat: 'H:mm'
将 am/pm 格式更改为 24 小时显示格式并始终显示分钟部分。 请参阅timeFormat option docs了解更多详情。