如何设置titleFormat以便日历的标题看起来像 2017年1月9日 - 2017年1月13日(星期六,星期六,周五至周日) 目前我的日历在开始时看起来像这样,标题看起来像1/9 - 15/2017(这不是我想要的)
$('#calendar').fullCalendar({
header: {
left: 'prev title next today',
right: ''
},
weekends: false,
titleFormat: "M/D/Y",
editable: false,
firstDay: 1,
disableDragging: true,
displayEventEnd: true,
views: {
week: {
type: 'basicWeek',
duration: {
days: 7
},
columnFormat: 'dddd M/D/Y'// Format the day to show full weekday and its date
}
},
请协助。
答案 0 :(得分:2)
您可以使用viewRender属性创建自己的标题格式。
首先,您必须将titleFormat更改为:
titleFormat: "YYYY/MM/DD"
标题现在应该是这样的:
2018/05/27 – 2018/06/02
然后您可以使用viewRender属性重新格式化标题:
viewRender: function (view, element) {
//reformat title date for week mode
if (view.type == "agendaWeek") {
//Get the start date value and reformat the date
var startDate = moment(view.title.split("–")[0].replace(" ", "")).format("M/D/YYYY");
//You can set the day range depending on what you need
//If you only want to show dates from Monday to Friday, then you can get the end date value by adding 4 days from the start date
var endDate = moment(startDate).add(4, "days").format("M/D/YYYY");
//Override the fullcalendar title here
$(".fc-center h2").text(startDate + " – " + endDate);
}
}
您可以在此处阅读第二个问题的答案: FullCalendar show only weekDays
答案 1 :(得分:1)
抱歉,但你不能。
在内部,FullCalendar使用其formatRange
方法格式化标题(请参阅https://fullcalendar.io/docs/utilities/formatRange/)。这采用给定的格式和智能地#34; (它的意思不是我的)拆分格式并在两个日期之间加一个破折号,这样你就可以得到一次指定的日期格式,但是在两天之间有一个短划线。因此,您可能会显示类似于" 2017年1月1日 - 31日和#34; (titleFormat: "MMM Do, Y"
)。
在任何情况下,您实际上都在尝试显示有效多余的信息 - 您希望将月份显示两次,将年份显示两次。用户只需显示一次就可以看到它非常愉快的月份和年份。