Drupal Camp Minsk 2012. Возможность изменения только одной области Нет инструментов, позволяющих загрузить css или js динамически Механизм по перезагрузке.

Презентация:



Advertisements
Похожие презентации
Боремся с «лишними» переходами на сайте, или еще пара слов о попапах и аяксах Талдыкин Егор Ardas Group.
Advertisements

Введение в JavaScript. Общие сведения Web, как гипертекстовую систему, можно рассматривать с двух точек зрения. Во-первых, как совокупность отображаемых.
Разработка больших сайтов Сумин Андрей Разработчик интерфейсов
AJAX Asynchronous Javascript and XML. Для чего нужен AJAX Недостаточная функциональность HTTP и HTML Не интерактивен Нет частичных обновлений Альтернативы.
Объектная модель DOM javascript. Иерархия классов.
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 2 Страницы и элементы управления Гайдар Магдануров
Формы в HTML. Элемент FORM Элемент уровня «блок» Управляющие элементы Просто текст Атрибуты: action – url обработчика method – post или get enctype –
JS, or not JS, вот в чем вопрос Фитискин Александр веб-технолог студия «Dominion»
Проф. В.К.Толстых, Технологии разработки Internet- приложений Delphi for.NET примеры: работа с файлами Из цикла лекций «Технологии разработки.
Программирование в Mozilla По материалам сайта. Добавление Javascript в XUL-страницы Добавление страниц с текстом на Javascript происходит точно так же,
Ненавязчивый Unobtrusive JavaScript Сергеев Алексей «Открытые Веб-Технологии»
Язык JavaScript Скриптовый язык для выполнения на html-страницах.
JavaScript Объекты документа Объект History Свойства: current next previous length.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: HtmlControls Из цикла лекций «Технологии разработки Internet-приложений»
Разработка модуля для CMS Drupal на примере разработки плагина для модуля CCK Роман Архаров.
JavaScript Лекция 8. JavaScript JavaScript - новый язык для составления скриптов, разработанный фирмой Netscape. С помощью JavaScript можно легко создавать.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – оптимизация скорости работы приложений Из цикла лекций.
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 3 Элементы управления в действии Гайдар Магдануров
JavaScript фреймворки. Куда катится мир. Владимир Кузнецов UWDC2012.
AJAX Выполнила: студентка группы ПИ-311 Газизова Влада.
Транксрипт:

Drupal Camp Minsk 2012

Возможность изменения только одной области Нет инструментов, позволяющих загрузить css или js динамически Механизм по перезагрузке полей формы приходится писать самостоятельно Нет возможности загрузить новую форму через AJAX, которая также использовала бы AJAX Нет единой страницы для AJAX callback

#ajax['callback'] #ajax['path'] #ajax['wrapper'] #ajax['effect'] #ajax['event'] #ajax['keypress'] #ajax['method'] #ajax['progress'] #ajax['trigger_as']

Запрос посылается на /system/ajax Загружается форма из {cache_block} Обработка загруженной формы Вызов функции из #ajax[callback]

Серверная часть – массив данных

Клиентская часть - набор функций массива Drupal.ajax.prototype.commands

ajax_command_after($selector, $html, $settings = NULL) ajax_command_alert($text) ajax_command_append($selector, $html, $settings = NULL) ajax_command_before($selector, $html, $settings = NULL) ajax_command_changed($selector, $asterisk = '') ajax_command_css($selector, $argument) ajax_command_data($selector, $name, $value) ajax_command_html($selector, $html, $settings) ajax_command_insert($selector, $html, $settings = NULL) ajax_command_invoke($selector, $method, $arguments = array()) ajax_command_prepend($selector, $html, $settings = NULL) ajax_command_remove($selector) ajax_command_replace($selector, $html, $settings = NULL) ajax_command_restripe($selector) ajax_command_settings($argument, $merge = FALSE)

Серверная часть

Клиентская часть

1. Выставление правильных хедеров для ответа от сервера 2. Обработка данных из page callback 3. Загрузка добавленных css и js 4. Изменение настроек в Drupal.settings 5. Преобразование AJAX комманд в JSON 6. Вызов хука hook_exit()

1. Создание селектора для AJAX ответа 2. Добавление #ajax атрибута

3. Написание обработчика AJAX

1. Создание селектора для AJAX ответа 2. Получение текущего шага

3. Создание элементов в зависимости от шага

4. Добавляем к кнопкам AJAX 5. Пишем AJAX обработчик

6. Пишем к форме функцию сабмита

Дополнительные AJAX команды ctools_ajax_command_attr($selector, $name, $value) ctools_ajax_command_redirect($url, $delay = 0, $options = array()) ctools_ajax_command_reload() ctools_ajax_command_submit($selector) Работа с мультистеп формами Работа с модальными окнами Примеры в модуле ctools_ajax_sample

Масловский Евгений