Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Выпадающие списки


Автор: SultanOFF 9.12.2009, 16:37
Здравствуйте. Есть необходимость сделать на сайте с помощью js выпадающие списки. Допустим в первом выпадающем списке человек из вариантов тест1, тест2, тест3 выбирает тест2 появляется еще один выпадающий список. как можно подобное реализовать? какие у кого идеи? smile Помогите пожалуйста 

Автор: Sinneren 9.12.2009, 17:35
типа спойлер чтоль?

Автор: SultanOFF 9.12.2009, 17:41
типо select smile

Автор: KonstRuctor 9.12.2009, 17:54
Связанные селекты, chained selects. 
Поиск даже по этому форуму даст интересные результаты, обсуждалось не раз.
Мне очень понравился вот такой вариант решения этой проблемы.
http://blog.webmasterschool.ru/archives/5
Использую его в своих проектах.

Автор: SultanOFF 9.12.2009, 18:22
решил делать вот так:
Код

<html>
  <head>
    <script>
      function dis(a, b) {
        a.form.elements[b].disabled = (a.value != 1);
      }
    </script>
  </head>
  <body>
    <form name="form1">
      <select name="sel1" onchange="dis(this, 'sel2')">
        <option value="1">1
        <option value="2">2
        <option value="3">3
      </select>
      <select name="sel2">
        <option value="1">1
        <option value="2">2
        <option value="3">3
      </select>
    </form>
  </body>
</html>


но есть еще одна функция:
Код

function validate (elem)
{
    var text = elem.value;
    var result = "";
    for ( var i = 0; i < text.length; i++ )
        if ( text.charAt (i) >= "0" && text.charAt (i) <= "9" ) result += text.charAt (i);
    elem.value = result;
}
function imgOpen (n)
{
    document.getElementById ("img").src = "http://site.com/1/" + n.toString() + ".jpg";
    document.getElementById ("img_block").style.display = "block";
}

 которая выводит изображения вот так:
Код

<input type="text" id="img_n" onkeyup="validate (this);" onblur="validate (this);" onchange="validate (this);" />
<input type="button" onclick="imgOpen(document.getElementById ('img_n').value);" value="Показать!" />


и собственно вопрос как сделать чтобы например если в первом селекте выбрано значение 1 то селект2 становится доступным, и если допустим в селект2 выбрано значение 1 то ссылка http://site.com/1/ если выбрано значение 2 то ссылка становится http://site.com/2/ ??? Что то никак понять не могу :(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)