09:47 

И еще раз задачка

Masque
Cherka Trova
есть два блока (обзовем их для порядка select1 и select2). В первом, скажем, 3 элемента, во втором, допустим, 7.
Требуется, чтобы при выборе 1 пункта select1 в select2 выводились первые 4 пункта, при выборе пункта 2 - первые 6 пунктов, ну и при выборе пункта 3 - все целиком. Содержание пунктов при этом не меняется,только вывод.

есть какие-нибудь идеи?

@темы: JavaScript

Комментарии
2010-03-29 в 11:14 

Тигр
Ну гавнокодом очевидно решается:
1) Присваиваем id отдельным кнопочкам разные
2) Пишем 3 функции.
3) В первой показываются 4 элемента. Во второй вызывается первая и показываются еще два. В третьей вызывается вторая и показывается еще один.
4) Байндим кнопочки на элементы.

А как по человечески решить, что-то в голову не приходит.


Кстати, недавно открылся форум по JQuery: www.linkexchanger.su/forum/

2010-03-29 в 12:34 

Tzota
Тут есть одна шутка. "Показывается" - не сработает. option не прячется ни через display:none, ни через visibility:hidden. Поэтому options из второго селекта надо выдёргивать к себе в переменную и вставлять во второй селект по мере надобности.

Пример на www.daniyal.ru/a/a.html , в исходнике - код с комментариями.

Ну а вообще для случая когда родитель один - это plugins.jquery.com/project/DependentSelectbySil...
Либо его же можно переписать, заменив условия class= и class!= на class*= и not(class*=)

2010-03-29 в 12:55 

Masque
Cherka Trova
спасибо) попробуем экстраполировать на несколько завязанных селектов)

2010-03-29 в 13:03 

nickolas erphe
Свобода - это умение улыбаться (с)
Masque
можно через innerHtml - по выбору селекта1 менять весь список селекта2.

2010-03-29 в 13:13 

alhames
alhames.ru
Я бы поступил проще - создал бы три селекта с 4/6/all опциями и делал бы видимым нужный..
Или нужна еще какая-то анимация?

2010-03-29 в 13:18 

Tzota
alhames Гагага, кстати, что-то в этом определённо есть! ))) Особенно в случае, когда списки короткие ))))

2010-03-29 в 13:45 

Masque
Cherka Trova
А что отправится в этом случае обработчику? не сработают ли select с display:none как элементы input type=hidden ?

2010-03-29 в 13:46 

Tzota
Masque Проверь ))) Но если мне не изменяет память, то скрытые от глаз элементы на сервер не отправляются.

2010-03-29 в 14:06 

alhames
alhames.ru
Masque не сработают ли select с display:none как элементы input type=hidden ?
Не знаю - не пробовал )
В крайнем случае что нам мешает мешает менять атрибут name динамически?:rotate:

2010-03-30 в 11:11 

Тигр
подожди, тебе два селекта связать надо? )))))))))

Блин! Я думал 2 блока через радио-буттоны...

www.linkexchanger.su/2009/82.html

     

@web-программирование

главная