JQuery-навигация: каскад динамических списков произвольной длины
Добрый день, читатели. Решил сегодня расслабиться от каждодневной работы и написать очередной tutorial. На повестке дня сегодня магия jQuery и небольшой рассказ о том, как динамически создавать на странице группы select`ов. Для того, чтобы вам была понятна задача, которую мы решаем, немного предыстории.
Сейчас я работаю над крупным проектом, который условно можно поделить на две части: 1) парсинг данных со сторонних ресурсов в наше базу данных, 2) расширенный поиск по этой базе с кучей условий и фильтров. Задача, которую мы решим сегодня, появилась именно при создании пользовательского интерфейса для задания условий поиска.
В дело в том, что в информация в базе данных разделена по категориям неограниченной вложенности. И этих самых категорий очень много. Для того, чтобы дать возможность пользователю выбрать категорию для поиска, было решено использовать динамические select`ы. Т.е. изначально на страничку загружается список с категориями верхнего уровня. Если пользователь выбирает для в этом списке какую-то категорию, то мы даем ajax-запрос на специальный скрипт, который возвращает нам список подкатегорий (т.е. тех, для которых выбранная категория является непосредственным родителем).

О том, как организовать подобную иерархию списков, можно прочитать здесь. Но. Такое решение не снимает проблем, ведь оно создано специально под 3 списка, в которых динамически меняется содержимое. А при работе с деревом категорий неограниченной вложенности мы никогда не знаем, сколько списков нам понадобиться. Поэтому описанную в статье методику пришлось “расширить”.
Вооружимся jQuery, PHP и современными традициями AJAX, начнем (сразу скажу, что нам понадобиться jQuery 1.3)…
Для нетерпеливых: то, что у нас получиться в итоге, вы можете посмотреть здесь:
Понравился пост? Будь в курсе последних событий: подпишись на RSS-ленту.!
- февраля 8
- 39 комментариев



Вы, знаете, последнее время замечаю за собой, что становлюсь все более и более ленивым в плане… заполнения всяких регистрационных форм, “придумывания” логинов и тому подобного. И я уверен, что я такой - не один! Действительно, когда вас просят зарегистрироваться, придумать себе ник и пароль, то это может показаться проявлением уважения к вам как к пользователю. Мол, Вы теперь будете называться как хотите, но….


