Событие fullqualendar jquery с веб-методом JSON - PullRequest
0 голосов
/ 05 марта 2012

Я хочу использовать полный календарь jquery (http://arshaw.com/fullcalendar/) в моем проекте .net. Пожалуйста, используйте код -

ASPX-файл-

var req = $.ajax({
            type: "POST",
            url: "scheduleTest.aspx/getAllScheduledSessionsOfLocation",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(data) {
                $(OnSuccess(data.d))
            },
            error: function(XMLHttpRequest, text, error) { debugger; alert(XMLHttpRequest.responseText); },
            failure: function(response) {
                alert(response.d);
            }
        });

        function OnSuccess(dataTable) {
            if (dataTable.length == 0) {
                $('#calendar').hide();
            }
            else {
                $('#calendar').fullCalendar({
                    editable: true,
                    events: dataTable,
                    eventDrop: function(event, delta) {
                        alert(event.title + ' was moved ' + delta + ' days\n' +
                            '(should probably update your database)');
                    },
                    loading: function(bool) {
                        if (bool) $('#loading').show();
                        else $('#loading').hide();
                    }
                });
            }
        }

WebMethod: scheduleTest.aspx/ getAllScheduledSessionsOfLocation Этот webMethod возвращает форматированную строку.

IMP: scheduleTest.aspx / getAllScheduledSessionsOfLocation () возвращает следующую строку:

"[{ title: 'Puneet sdfsdfsdf', allDay: false, start: '02/20/2012 1:30:00 PM', end: '02/20/2012 2:00:00 PM' }, { title: 'Puneet sdfsdfsdf', allDay: false, start: '02/27/2012 1:30:00 PM', end: '02/27/2012 2:00:00 PM' }, { title: 'bhuvana ', allDay: false, start: '03/05/2012 2:00:00 PM', end: '03/05/2012 2:00:00 PM' }, { title: 'bhuvana ', allDay: false, start: '07/09/2012 2:00:00 PM', end: '07/09/2012 2:00:00 PM' }, { title: 'abc xyz', allDay: false, start: '07/09/2012 6:00:00 AM', end: '07/09/2012 6:00:00 AM' }, { title: 'bhuvana ', allDay: false, start: '07/11/2012 7:30:00 PM', end: '07/11/2012 7:30:00 PM' }, { title: 'bhuvana ', allDay: false, start: '07/16/2012 2:00:00 PM', end: '07/16/2012 2:00:00 PM' }, { title: 'rtew ', allDay: false, start: '08/25/2014 6:00:00 AM', end: '08/25/2014 6:00:00 AM'}]"

ПРИМЕЧАНИЕ. Если я скопировал и вставил возвращенную строкувышеуказанным webmethod в Event of fullcalender, он правильно показывает вывод, но когда я назначаю возвращаемый объект событию (например, - events: dataTable), он не показывает события.

Проблема: я думаю, что получилпроблема. Если я передаю следующий код в событии - тогда он работает

events: [{ title: 'Puneet sdfsdfsdf', allDay: false, start: '02/20/2012 1:30:00 PM', end: '02/20/2012 2:00:00 PM' }, { title: 'Puneet sdfsdfsdf', allDay: false, start: '02/27/2012 1:30:00 PM', end: '02/27/2012 2:00:00 PM' }, { title: 'bhuvana ', allDay: false, start: '03/05/2012 2:00:00 PM', end: '03/05/2012 2:00:00 PM' }, { title: 'bhuvana ', allDay: false, start: '07/09/2012 2:00:00 PM', end: '07/09/2012 2:00:00 PM' }, { title: 'abc xyz', allDay: false, start: '07/09/2012 6:00:00 AM', end: '07/09/2012 6:00:00 AM' }, { title: 'bhuvana ', allDay: false, start: '07/11/2012 7:30:00 PM', end: '07/11/2012 7:30:00 PM' }, { title: 'bhuvana ', allDay: false, start: '07/16/2012 2:00:00 PM', end: '07/16/2012 2:00:00 PM' }, { title: 'rtew ', allDay: false, start: '08/25/2014 6:00:00 AM', end: '08/25/2014 6:00:00 AM'}],

Но когда я добавил двойную кавычку arround возвращаемой строки, он не показывает события. Like-

events: "[{ title: 'Puneet sdfsdfsdf', allDay: false, start: '02/20/2012 1:30:00 PM', end: '02/20/2012 2:00:00 PM' }, { title: 'Puneet sdfsdfsdf', allDay: false, start: '02/27/2012 1:30:00 PM', end: '02/27/2012 2:00:00 PM' }, { title: 'bhuvana ', allDay: false, start: '03/05/2012 2:00:00 PM', end: '03/05/2012 2:00:00 PM' }, { title: 'bhuvana ', allDay: false, start: '07/09/2012 2:00:00 PM', end: '07/09/2012 2:00:00 PM' }, { title: 'abc xyz', allDay: false, start: '07/09/2012 6:00:00 AM', end: '07/09/2012 6:00:00 AM' }, { title: 'bhuvana ', allDay: false, start: '07/11/2012 7:30:00 PM', end: '07/11/2012 7:30:00 PM' }, { title: 'bhuvana ', allDay: false, start: '07/16/2012 2:00:00 PM', end: '07/16/2012 2:00:00 PM' }, { title: 'rtew ', allDay: false, start: '08/25/2014 6:00:00 AM', end: '08/25/2014 6:00:00 AM'}]",

Когда я отлаживаю код метода JSON с помощью firebug, «data.d» содержит строку с двойными кавычками. Думаю, в этом проблема.

1 Ответ

0 голосов
/ 07 марта 2012

ОК, Абхи ... глядя на вывод и сравнивая его с моим фидом json, у меня есть кавычки вокруг каждого ключевого слова и значения, поэтому мой вывод с использованием ваших данных будет выглядеть так:

[{ 'title': 'Puneet sdfsdfsdf', 'start': '02/20/2012 1:30:00 PM', 'end': '02/20/2012 2:00:00 PM' }, { 'title': 'Puneet sdfsdfsdf','start': '02/27/2012 1:30:00 PM', 'end': '02/27/2012 2:00:00 PM' }, { 'title': 'bhuvana ', 'start': '03/05/2012 2:00:00 PM', 'end': '03/05/2012 2:00:00 PM' }, { 'title': 'bhuvana ', 'start': '07/09/2012 2:00:00 PM', 'end': '07/09/2012 2:00:00 PM' }, { 'title': 'abc xyz', 'start': '07/09/2012 6:00:00 AM', 'end': '07/09/2012 6:00:00 AM' }, { 'title': 'bhuvana ', 'start': '07/11/2012 7:30:00 PM', 'end': '07/11/2012 7:30:00 PM' }, { 'title': 'bhuvana ', 'start': '07/16/2012 2:00:00 PM', 'end': '07/16/2012 2:00:00 PM' }, { 'title': 'rtew ', 'start': '08/25/2014 6:00:00 AM', 'end': '08/25/2014 6:00:00 AM'}]

Так как все ваши события имеют даты начала и окончания, я бы использовал allDayDefault: false param. Попробуйте это, и если у вас все еще есть проблемы, попробуйте изменить формат времени, так как у меня были проблемы с форматом, который я использовал, пока я не отформатировал свое время в этот формат:

'2012-02-27T14:00:00+0000'

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...