LINUX.ORG.RU

[html,js]выпадающий список(select) раскрывающееся дерево


0

1

Как такое реализовать? Необходима возможность выбирать как узлы дерева, так и листья. То есть выглядеть должно примерно так:

-кат1
--подкат11
---подкат112
---подкат113
-+подкат12
+кат2
+кат3
с возможностью выбрать как катn так и подкатnm


Ответ на: комментарий от spdooh

в селекте? не работает.

В селекте ты и не сделаешь. Делай без него, реализуй выделение через js.

Ну да, можно сделать и внутри селекта, тупо набив в названия option-ов отступы и плюсики, но всё равно придётся писать вручную код, который при нажатии на элемент будет показывать/скрывать другие. Тогда структуру дерева нужно будет хранить в самих option-ах, чтобы через js выстроить в памяти дерево и хранить его состояние (раскрытые узлы и т.д.). Оно ещё и некрасиво выглядеть будет.

anonymous
()
Ответ на: комментарий от spdooh

Просто дерево отобразить в селекте - есть куча примеров.
Но надо еще чтоб оно умело сворачиваться - выводить портянку с более 100 элементами - это негуманно)

spdooh
() автор топика
Ответ на: комментарий от anonymous

Делай без него, реализуй выделение через js.

Знаю. Сам селект необязателен - надо только чтоб вид такой же (чтоб не вводить в ступор). Думал, что это достаточно типичная задача и должна была быть уже сотни раз сделана)

spdooh
() автор топика
Ответ на: комментарий от GateKeeper

jQuery.dynatree + jQuery.dropdownreplacement

судя по названиям - подходят)
Неужели нигде реализованного нет и придется теперь c js разбираться?

spdooh
() автор топика
Ответ на: комментарий от spdooh

Реализованного как? В DDR твой <select> одним движением превращается в кучу <div> + хендлеры на клик, скролл, кейап/кейдаун, етц. Хендлеры как без js собираешься делать?

GateKeeper ★★
()
Ответ на: комментарий от GateKeeper

В смысле где-то чтоб было на каком-либо сайте и откуда можно стянуть необходимый js код)
DDR - это, насколько понимаю, не dance-dance-revolution?
То, что для этого обязателен js - это я понимаю.
в общем - прошлым сообщением ты мне уже помог. После этого мне осталось уйти в гугль. Разве что - что все таки такое DDR?

spdooh
() автор топика
Ответ на: комментарий от spdooh

Это второй из указанных мной плагинов. Первый, соответственно, сокращается в DT, при соблюдении контекста данной ветки форума.

GateKeeper ★★
()
Ответ на: комментарий от GateKeeper

Внезапно!
*ушел в гугль... Спасибо!

spdooh
() автор топика

Обычно это делают так:

<select>
  <option class="category">Category1</select> <!-- You can make it bold, for instance. -->
  <option>  Item1</option>
  <option>  Item2</option>
  <option class="category">Category2</select>
</select>

urxvt ★★★★★
()
Ответ на: комментарий от urxvt

Обычно это делают так:

все-таки теги лучше парные...
в списке - дерево где-то из 100 элементов. выводить сразу все видимыми - это жестоко. Поэтому надо прятать - что-то типа max-at-work.narod.ru/jquery.tree.test.html , но выпадающее - чтоб не занимать место.

spdooh
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.