Fullcalendar 完整日历更改日期格式
当用户在日历上选择一系列日期时,将打开一个模式,初始日期和最终日期的输入字段将自动完成之前选择的日期。问题是它们以这种格式显示YYYY-MM-DD,我希望它是DD-MM-YYYY。我什么都试过了,但似乎都不管用。 这里是我获取日期并填写输入的地方:Fullcalendar 完整日历更改日期格式,fullcalendar,date-formatting,Fullcalendar,Date Formatting,当用户在日历上选择一系列日期时,将打开一个模式,初始日期和最终日期的输入字段将自动完成之前选择的日期。问题是它们以这种格式显示YYYY-MM-DD,我希望它是DD-MM-YYYY。我什么都试过了,但似乎都不管用。 这里是我获取日期并填写输入的地方: select: function (info) { $('#ModalAdd').modal('show'); $('#ModalAdd').appendTo("body"); $('#activoReservar').
select: function (info) {
$('#ModalAdd').modal('show');
$('#ModalAdd').appendTo("body");
$('#activoReservar').val($('#selectActivoReserva option:selected').text());
$('#fechaInicial').val(info.startStr);
var endDate = new Date(info.end);
var beforeDay = new Date(endDate.getFullYear(),endDate.getMonth(),endDate.getDate() - 1).toISOString().slice(0,10);
$('#fechaFinal').val(beforeDay);
},
以下是我尝试过的东西:
$('#fechaInicial').val(info.startStr.format('ddd, DD-MM-YYYY')); //i tried with dd and a single d too. And without any d
$('#fechaFinal').val(beforeDay.format('ddd, DD-MM-YYYY'));
您可以创建另一个函数(也可以在其他任何地方使用), 将日期传递给该函数并返回所需的格式 示例函数可能如下所示:
function dateToDMY(date) {
var d = date.getDate();
var m = date.getMonth() + 1; //Month from 0 to 11
var y = date.getFullYear();
return '' + (d <= 9 ? '0' + d : d) + '-' + (m <= 9 ? '0' + m : m) + '-' + y;
}
select: function (selectionInfo) {
var startStr = dateToDMY(selectionInfo.start);
}
info.startStr
是一个字符串(读起来很清楚)。因此,它没有可以调用的format()
函数。这应该会导致浏览器控制台出错。你查过了吗?FullCalendar有一个formatDate()
函数(请参阅),可用于格式化日期对象(例如info.start
而不是info.startStr
)。或者,如果你在谷歌上搜索,你可以使用你得到的许多建议中的任何一个