我正在研究jQuery的完整日历插件。我必须根据动态时区设置今天的完整日历日期。我在 PHP 变量中有今天的日期。如何在完整日历中从PHP变量设置今天的日期。我尝试过gotoDate
选项,但它不起作用。
请在下面找到代码:-
$("#calendar").fullCalendar({
gotoDate : <?php echo $startdate; ?>,
dayClick: function (date, jsEvent, view){
$(".fc-state-highlight").removeClass("fc-state-highlight");
$("td[data-date="+date.format('YYYY-MM-DD')+"]").addClass("fc-state-highlight");
},
eventRender: function(event, element, view){
if(event.start._d.getMonth() !== $("#calendar").fullCalendar("getDate")._d.getMonth()){
return false;
}
},
viewRender: function(view, element){
$(".fc-other-month").html("");
},
windowResize: function(view) {
if($(window).width() < 514){
$("#calendar").fullCalendar("changeView", "basicDay");
}else{
$("#calendar").fullCalendar("changeView", "month");
}
}
});
任何帮助将不胜感激。提前谢谢。
gotoDate"是一个方法而不是一个选项。您不能在这样的初始化选项中指定它。
为了设置日历加载时显示的日期,您需要的是"defaultDate"(https://fullcalendar.io/docs/current_date/defaultDate/(
$("#calendar").fullCalendar({
defaultDate : <?php echo $startdate; ?>,
您应该确保$startdate
采用YYYY-MM-DD
格式,以确保提供给 fullCalendar 的信息没有歧义。
注意"gotoDate"旨在在日历初始化后使用,如果您需要根据日历控件范围之外的某些事件手动设置当前日期。有关使用说明,请参阅 https://fullcalendar.io/docs/current_date/gotoDate/。
使用此代码:D
//seting current date php
$today = date("Y-m-d");
//seting current date in js fullcalendar
defaultDate: <?php echo "'" . $today. "'"; ?>, //yyyy+"-"+mm+"-"+dd, >jsformat<
//example
$('#calendar').fullCalendar({
defaultDate: <?php echo "'" . $today . "'"; ?>,
});
根据文档,您必须先创建一个 MomentJS 对象。所以你必须将 php 变量设置为一个像这样的 Moment 对象:
var date = $.fullCalendar.moment('2014-05-01'); //This is the format Y-m-d
var date = $.fullCalendar.moment('<?php echo $startdate; ?>');
创建对象后,在 goToDate 属性中设置 js 变量date
:
gotoDate: date