2016-02-01 2 views
1

Я использую FullCalendar для отображения событий в календаре (в JSP), но не работает в IE (только в IE). я делаю AJAX запрос и с JSON, который возвращается, создать событие для визуализации календаря следующим образом:IE не передает события fullcalendar.js

$.ajax({ 
     type: "POST", 
     url: 'criarTreinoJson'+params,       
     dataType: 'json', 
     contentType: 'application/json', 
     success: function(data) { 

      var treino = data.treino; 

      var newEvent = { 
        title: treino.local.name, 
        allDay: true, 
        start: treino.date.year + "-" + 
          treino.date.monthValue + "-" + 
          treino.date.dayOfMonth 
      };    

      $('#calendar').fullCalendar('renderEvent', newEvent, true); 
     }  
    }); 

JQuery = v2.1.3, FullCalendar = V2.3.1.

В интерфейсе я использую Struts 2 + Spring с Java 8.

+0

, какая версия IE вы используете – shu

+0

@shu Я использую IE 11. –

+0

Что версия fullcalendar.js и jQuery используются на странице? – smcd

ответ

1

Проблема заключается форматирование даты. Я использую java.time.LocalDate и monthValue и dayOfMonth атрибуты возвращают отдельные цифры, если значение меньше 10, и оно не работает в IE.

i. e., «2-5-2016» не работает в IE, право « 2- 5-2016».

Чтобы устранить эту проблему, я изменил его:

start: treino.date.year + "-" + 
     treino.date.monthValue + "-" + 
     treino.date.dayOfMonth 

Для этого:

start: treino.date.year + "-" + 
      (treino.date.monthValue<10?"0"+treino.date.monthValue:treino.date.monthValue) + "-" + 
      (treino.date.dayOfMonth<10?"0"+treino.date.dayOfMonth:treino.date.dayOfMonth), 
Смежные вопросы