fullcalendar - enddate不正确

时间:2015-09-15 07:49:49

标签: javascript html fullcalendar

我有一个完整的日历,我可以在其中输入事件。但是,当我参加活动时,没有时间,它们似乎提前一天结束,所以当我有2015-09-05的结束日期时,它会在4日结束。 9月份,而不是5号......我认为这是因为它结束了#34;所以那天结束了,所以它结束了一天之前,但我不想要这种行为,我想让它显示出来,就像你提供的那一天结束时仍然是事件"运行"。有趣的是,如果我提供一个时间(如2015-09-05T14:00:00),它可以工作,因为它定义在提供的日期结束。

现在的问题是:如何更改此行为,以便在适当的时间显示事件?

编辑:问题实际上是,您提供的那一天是独家的,所以它不再是时间了。

  

结束:活动结束的独家日期/时间。可选的。

问题是,我该如何改变这种行为......

edit2 我尝试了类似

的内容
var end_split = enddate.split('-');
end_split[2]= parseInt(end_split[2])+parseInt("1");
enddate = end_split[0] + "-" + end_split[1] + "-" + end_split[2];
现在这个,它一般都有效,但是如果enddate是一个月的第30个,那就有问题,因为那时保存的结束日期将是第31个,而且它总是不存在......,所以这个解决方案不会起作用......

2 个答案:

答案 0 :(得分:3)

如果我们按照以下步骤,答案很简单

  1. 以字符串
  2. 从用户处获取结束时间
  3. 使用milliseconds = Date.parse(enddate);
  4. 将其转换为毫秒
  5. 添加对应于24小时且毫秒变量
  6. 的毫秒数
  7. 然后使用var d = new Date(milliseconds);
  8. 将其更改为日期对象
  9. 使用Moment.js
  10. 将其转换为您想要的格式
  11. 最后使用ajax
  12. 将其发送到您的php脚本

答案 1 :(得分:0)

我也面对同样的问题并通过添加" T23:59:00"结束日期 PHP代码:

$data_events[] = array(
             "id" => $eventid,
             "title" => $title,              
             "start" => $start_date,                 
             "end" => $end_date."T23:59:00"
         );     
echo json_encode(array("events" => $data_events));