Верстка выпадающих списков

Когда нужен не просто выпадающий, а красиво оформленный выпадающий список, верстальщики используют различные яваскрипты. Работают эти скприпты все примерно одинакого. Тэг select заменяется на множество тэгов div. Простейшие действия — выбор элемента списка при этом выполняется. Но если нам надо чуть сложнее, например прицепить функцию на событие выпадающего списка onchange, то это уже не работает. Подскажите как решается эта проблема или в каких скриптах для оформления допдаунов, эта проблема изначально решена.
  • Вопрос задан
  • 4163 просмотра
Пригласить эксперта
Ответы на вопрос 7
Anonym
@Anonym
Программирую немного )
Если вы список замените на кучу дивов, то вам нужно будет обрабатывать уже не onchange, а, например, onclick по диву, ну и, опционально, делать там change списка, чтобы сработало onchange. Как-то так.
Ответ написан
Комментировать
Vorchun
@Vorchun
Посмотрите примеры тут: css.maxdesign.com.au/listamatic/
Ответ написан
Комментировать
@jamayka
В jQuery например (я думаю и в любом другом серьезном фреймворке) можно файерить события кастомно. Например вот плагин jQuery custom selectboxes. Если конкретно на этой странице выполнить:
$('#default-usage-select').change(function() { alert(this.value); });

А потом выбрать цвет в демо селекте, то алертнется его значение.
Ответ написан
Комментировать
@loat
вот тут можете выбрать то, что вам по душе — www.queness.com/post/204/25-jquery-plugins-that-enhance-and-beautify-html-form-elements

мне лично вот это нравится больше всех — www.dfc-e.com/metiers/multimedia/opensource/jqtransform/

функцию на событие выпадающего списка думаю не проблема написать самому.
Ответ написан
elisium
@elisium
При использовании jquery вы можете сами генерировать событие через trigger('change').
Ответ написан
Комментировать
@ChemAli
А зачем вам вообще селекты при таких хотелках? Яваскрипт и скрытое поле. Все хуки на яваскрипте.
Ответ написан
Комментировать
Riateche
@Riateche
Я в свое время сам написал для себя такой плагин (проблема в существующих была как раз на onchange). Вам советую сделать так же, меньше проблем потом будет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы