jQuery FullCalendar - попытка добавить событие и отобразить его в календаре не удалась

Я пытаюсь понять, как использовать блестящий плагин jQuery Адама Шоу - FullCalendar, чтобы добавить событие в наш проект: онлайн страница заказа воздушных шаров в разработке

По сути, если вы нажмете «шаг 1» и выберете «забрать в магазине», страница перенесет вас в представление календаря, где вы можете щелкнуть в правом верхнем углу на кнопке «неделя», чтобы изменить вид на еженедельный. основа. Чего я пытаюсь добиться, так это того, что когда клиент нажимает на пустой слот в течение дня, он может создать свое событие на этом месте. Вот мой код в custom.js:

dayClick: function() 
            {

                var n = parseInt(this.className.match(/fc\-slot(\d+)/)[1]);
                alert('a day has been clicked on slot ' + n);

                //trying to add an event using the renderEvent() method.
                $('#' + type + 'Calendar').fullCalendar('renderEvent', 
                        {
                            title : 'my pickup slot',
                            start : new Date(y,m,d, 12, 30),
                            end   : new Date(y,m,d, 13, 00),
                        });
            }

Он пытается использовать метод API FullCalendar renderEvent, чтобы создать такое событие. Однако, хотя мой код работает без ошибок, и я вижу подсказку о том, какой слот был нажат, он не будет отображать такое новое событие в календаре.

Есть ли другой способ сделать это или мой код делает что-то не так?

Любое предложение будет высоко оценено, большое спасибо заранее.


person Michael Mao    schedule 22.03.2010    source источник
comment
CarnivalAndToy — это ваш проект? Вы должны полностью переосмыслить то, что вы делаете! Так много кликов, чтобы заказать что-то? Вы должны знать, что любой коммерческий сайт отлично подходит для One Step Checkout, а не 101 ... (я просто говорю, что я в бизнесе - www.cattier.dk)   -  person balexandre    schedule 22.03.2010
comment
@balexandre: Да, это наш проект. Это для CarnivalAndToy.com.au и в настоящее время разрабатывается в accedo.com.au. У нас уже уходит много времени на прохождение такого пути и уже подтверждено клиентом - боссом CarnivalAndToy.com.cu Да, пользовательский интерфейс немного неуклюжий и сложный, хотелось бы, чтобы была только одна кнопка купить воздушные шары, но, к сожалению , что не будет работать в соответствии с требованиями. В любом случае, спасибо за ваше любезное предложение.   -  person Michael Mao    schedule 22.03.2010


Ответы (1)


Это простая оплошность. Значение type в функции loadCalender(type) устанавливается равным pickupCalendar из вызова closeStep1OpenSetp2("pickupCalendar");.

Но вы делаете $('#' + type + 'Calendar'), что оценивается как $('#pickupCalendarCalendar'), а элемента с таким идентификатором нет. Правильным будет $('#pickupCalendar'), поэтому либо удалите календарь в параметре, либо выбросьте + 'Calendar'. Тогда должно работать нормально

person jitter    schedule 22.03.2010
comment
@jitter Большое спасибо за это! OMG, я никогда не осознавал, что сделал такую ​​​​ошибку в коде... Ночная разработка... Я не мог дать вам больше одного голоса, что так грустно :) - person Michael Mao; 22.03.2010