我正在使用Jquery fullcalendar 3.3.1 & moment.js 2.15.1。要顯示事件日曆和事件點擊,它會顯示帶有事件詳細信息的模式彈出窗口。事件詳細信息存儲在SQL數據庫中,並使用ajax使用Web方法EventList.aspx/GetEvents填充事件。全日曆事件時間在Chrome瀏覽器和Safari瀏覽器上添加一小時
除了事件時間在Chrome瀏覽器中顯示1小時前,所有事情都按預期工作。& Safari瀏覽器。我使用moment.js格式化日期&時間
$('#msDate').html(moment.utc(calEvent.start).local().format('DD-MM-YYYYHH:mm'));
日曆代碼:
<script type = "text/javascript">
jQuery(document).ready(function() {
$.ajax({
type: "POST",
contentType: "application/json;charset=utf-8",
data: "{}",
url: '<%= ResolveUrl("EventList.aspx/GetEvents")%>',
dataType: "json",
success: function(data) {
$('#fullcal').fullCalendar({
eventClick: function(calEvent, jsEvent, view) {
$('#eid').html(calEvent.id);
$('#modalTitle').html(calEvent.title);
$('#msDate').html(moment.utc(calEvent.start).local().format('DD-MM-YYYY HH:mm'));
$('#meDate').html(moment.utc(calEvent.end).local().format('DD-MM-YYYY HH:mm'));
$('#mloc').html(calEvent.loc)
$('#mdesc').html(calEvent.des)
$('#url').attr('href', 'Meetings/Meeting.aspx?ID=' + calEvent.id)
$('#fullCalModal').modal();
},
header: {
left: 'prev,next today',
center: 'title',
right: 'month,basicWeek,basicDay'
},
views: {
month: { // name of view
columnFormat: 'ddd',
},
week: { // name of view
titleFormat: 'MMMM D , YYYY',
columnFormat: 'ddd D/M',
},
day: { // name of view
titleFormat: 'MMMM DD YYYY',
columnFormat: 'ddd D-M-YYYY',
}
},
displayEventTime: false, // hide event time
eventLimit: true, // allow "more" link when too many events
events: $.map(data.d, function(item, i) {
var event = new Object();
event.id = item.EventID;
event.title = item.EventName;
event.start = new Date(item.StartDate);
event.end = new Date(item.EndDate);
event.loc = item.Location;
event.des = item.Description;
return event;
}),
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
debugger;
}
});
});
</script>
Web方法返回SP記錄:
1111 ABCD 2017-10-20T09:30:00 2017-10-20T16:30:00 xxx
JSON數據:
EndDate:"2017-10-20T16:30:00"
EventID:1111
EventName:"ABCD"
Location:"xxx"
StartDate:"2017-10-20T09:30:00"
使用
CONVERT(VARCHAR(30),m.StartDate,126) AS startdate inside the SP.
模式彈出顯示日期時間轉換:
starttime:20-10-2017 10:30 endtime:20-10-2017 17:30
你必須在sql –
上設置日期你是什麼意思你必須在SQL上設置日期? –