Степанов Андрей
*авторизированный доступ


Применение AJAX [05/01/07]


AJAX не панацея от всех бед, и разрабатывать сайт исключительно по этой технологии, конечно, смысла нет, иначе мы можем забыть про индексацию и сохранение страниц.
Однако, уже подчеркивалось в нескольких форумах, некоторые интреактивные элементы, такие как голосование, “быстрый ответ” в форумах, редактирование, отсылка сообщений администратору сайта можно (и я считаю нужно) делать по этой технологии.
Уже говорилось про то, что одна из проблем AJAX — отсутствие поддержки кнопки Back, однако этот недостаток можно превратить в достоинство — вспомните, как засоряется история браузера при просмотре форумов, ответах в темах и голосовании. Что толку от страницы, на которой мы размещали свой ответ, либо редактировали свое сообщение? При интеграции AJAX мы можем непосредственно с текущей страницы отправлять сообщения, либо редактировать их, экономя свое время и прекрасно пользуясь кнопкой Back.

Многие упирают на то, что для AJAX требуется поддержка JS, а если ее нет, то и работать ничего не будет. Конечно, это правда. Но не до конца. К примеру — стандартная функция форума “быстрый ответ”. Нам не потребуеся даже сильно менять код скрипта. Просто в форме укажем onsubmit=javascript:return false;

и на кнопку Submit повесим обработчик onclick=send();


В функции send() мы отошлем данные скрипту с указанием того, что данные пришли через js — введем переменную ajax=true, а в скрипте, после выполнения всех действий, в зависимости от значения переменной ajax, сгенерируем либо xml, либо страницу с сообщением и редиректом на HTTP_REFERER. Наш js забирает сгенерированный xml и парсит его (DOM). Тут есть из чего выбрать: SOAP, XML RPC, JSON, XML.

В alert() мы можем сделать вывод либо всех сообщений или ошибок, либо просто выводить текст типа “Ваше сообщение отослано” или “Имеются ошибки”. Если ошибок нет, то поля ввода очищаются.
Но вот js выключен и что мы имеем? Стандартную форму быстрого ответа.
На мой взгляд, когда шумиха вокруг данной технологии спадет, AJAX займет свою нишу. Нет, не будут создаваться целые проекты на “чистом” AJAX, данная технология позволит просто упростить работу и навигацию на сайтах.


Создать закладку Google slashdot YahooMyWeb Digg Technorati Delicious Забобрить эту статью! Добавьте на news2.ru




Степанов Андрей

ФИО: Степанов Андрей
Должность: программист
Ник: stepanov

Личные данные  Письмо автору

Yandex RSS
Получать обновления блога по Email



количество читателей онлайн и всего
BLOGUS.RU
Рейтинг блогов

Вверх
Вернуться

Поиск
© Red Graphic Systems