Зато я не привязывался к DOM - исходил из задачи правки чисто функции
Ко всему прочему - может скрывать и показывать элементы произвольно в зависимости от нужной комбинации( к примеру чекитов, или мультиселектов, (*востребовано для комбинационных, расширяемых пояснений, с много селектами |
Цитата:
|
Цитата:
Поправил: <!DOCTYPE HTML> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <script> function toggle(val) { var elemId =['avto','moto','shlemi','furgon_do','gruz_sv']; function setToddle(a) { for(var i=0;i<elemId.length;i++) { var tmp=(!+a[i]) ? 'none':''; document.getElementById(elemId[i]).style.display=tmp; } } var obj = { avto: '10000', moto: '01000', shlemi: '00100', furgon_do: '00010', gruz_sv: '00001', esly_else: '00' } for(var key in obj) { if(val==key) { var setArray = obj[key].split('');setToddle(setArray);return; } } var setArray = obj.esly_else.split('');setToddle(setArray);//если соответствует 'else' } </script> </head> <body> <form> <select name="select_left" size="1" id="select_left_id" onChange="toggle(this.value);"> <option value="avto" selected>Автомобили</option> <option value="moto">Мотоциклы</option> <option value="shlemi" >Одежда шлемы</option> <option value="furgon_do">Фургоны, грузовые автомобили до 7,5т</option> <option value="gruz_sv">Грузовые автомобили свыше 7,5т</option> </select> <div id="avto" style="display: block;">avto</div> <div id="moto" style="display: none;">moto</div> <div id="shlemi" style="display: none;">shlemi</div> <div id="furgon_do" style="display: none;">furgon_do</div> <div id="gruz_sv" style="display: none;">gruz_sv</div> </form> </body> </html> |
ага спасибо
|
а если допустим выпадающий список убрать и заменить его
ul li id="avto" li id moto будет работать выше написаный скрипт? |
Цитата:
onChange="toggle(this.value); нун писать ul li data="avto" onclick="toggle(this.getAttribute('data'))" li idata="moto Или просто ul li onclick="toggle('avto')" li onclick="toggle('moto')" |
у меня на странице два списка с блоками один в другом
<список></список> <блок> <список></список> <блок></блок></блок> и перестало работать js а создал все в точности как тут написано не подскажите в чем проблема? |
Всё это гавно же.
Нормальные люди продумывают всё заранее и пишут соответтвующий css. А потом просто навешивают класс show/hide(в зависимости от подхода). |
мда...
|
Часовой пояс GMT +3, время: 23:09. |