Есть какой то выпадающий список HTML: <select> <option>A</option> <option>B</option> <option>C</option> <option>D</option> </select> и какой то скрытый блок <div> с информацией. Как можно сделать, чтобы при выборе например из списка пункта C или D, автоматически появлялся этот блок.
... onchange='showdiv(this.value)' ... [js]<script> function showdiv(value) { document.getElementById('mydiv').style.display= (value ? '' : 'none'); } <script>[/js]
Сделал вот так [js]<SCRIPT language="javascript"> function showdiv(value) { document.getElementById('mydiv').style.display= (value ? '' : 'none'); } </script>[/js] HTML: <select> <option>Выберите категорию</option> <option onchange='showdiv(this.value)'>Блог компании World Programs2</option> <option onchange='showdiv(this.value)'>Блог компании World Programs3</option> <option>Блог компании World Programs</option> </select> <div id="mydiv" style="display:none">Блог World Programs</DIV> Все равное не работает
option не имеет события onchange. его имеет элемент select понятия "не работает" не бывает. есть ошибки и их описание. сообщения об ошибках. постарайся понять что происходит
К сожалению никаких ошибок не выводил, вообще ничего не происходило. Переделал код так [js]<script language="javascript"> function showdiv(value) { document.getElementById('mydiv').style.display= (value ? '' : 'none'); } </script>[/js] HTML: <H1>Раскрытие блока при клике на ссылку</H1> <select> <option>Выберите категорию</option> <option onclick='showdiv(this.value)'>A</option> <option onclick='showdiv(this.value)'>B</option> <option>C</option> </select> <div id="mydiv" style="display:none">C</DIV> При выборе пункта A или B див теперь появляется, а как сделать, что бы при выборе C он опять пропадал?
То есть просто напиши <select onchange='showdiv(this.value)'>, а у всех option все onclick/onchange убери.
Мне необходимо что бы при выборе пунктов A и B появлялся див, а при выборе C он опять скрывался. В вашем случае, при выборе любого пункта, див появляется.
Сделал это вот так: Код (Text): <style> #box1 { display:none; } </style> <script language="javascript" src="jquery-1.4.2.min.js"></script> <script language="JavaScript" type="text/javascript"> jQuery(function() { jQuery('.q1').click(function() { jQuery('#box1').slideDown(100); }); jQuery('.q2').click(function() { jQuery('#box1').slideUp(100); }); }); </script> <select name=""> <option class ="q2">AAAAA</option> <option class ="q1">BBBBB</option> <option class ="q1">CCCCC</option> <option class ="q2">DDDDD</option> </select> <div id="box1">Тут какой то текст</div> Вопрос закрыт, всем спасибо за помощь
Тот вариант который вы мне предложили - проще, но я не знал, как при выборе другого пункта скрыть див. К сожалению Jscrips я знаю плохо. Почитал уроки по jquery, сделал по аналогии, в принципе очень простой код получился.
Что вы имеете в виду? Почему не прописаны value, name? Это был не рабочий код, просто для примера, значения не важны в данном случае, меня интересовал результат.