За последние 24 часа нас посетили 17344 программиста и 1720 роботов. Сейчас ищут 929 программистов ...

Подгрузка данных из списка

Тема в разделе "JavaScript и AJAX", создана пользователем jenya777777, 27 июл 2010.

  1. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Есть какой то выпадающий список

    HTML:
    и какой то скрытый блок <div> с информацией.

    Как можно сделать, чтобы при выборе например из списка пункта C или D, автоматически появлялся этот блок.
     
  2. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    ... onchange='showdiv(this.value)' ...

    [js]<script>
    function showdiv(value) {
    document.getElementById('mydiv').style.display= (value ? '' : 'none');
    }
    <script>[/js]
     
  3. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Сделал вот так

    [js]<SCRIPT language="javascript">
    function showdiv(value) {
    document.getElementById('mydiv').style.display= (value ? '' : 'none');
    }
    </script>[/js]


    HTML:
    1. <option>Выберите категорию</option>
    2. <option onchange='showdiv(this.value)'>Блог компании World Programs2</option>
    3. <option onchange='showdiv(this.value)'>Блог компании World Programs3</option>
    4. <option>Блог компании World Programs</option>
    5.  
    6. <div id="mydiv" style="display:none">Блог World Programs</DIV>

    Все равное не работает
     
  4. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    option не имеет события onchange. его имеет элемент select


    понятия "не работает" не бывает.
    есть ошибки и их описание. сообщения об ошибках.
    постарайся понять что происходит
     
  5. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    К сожалению никаких ошибок не выводил, вообще ничего не происходило.
    Переделал код так

    [js]<script language="javascript">
    function showdiv(value) {
    document.getElementById('mydiv').style.display= (value ? '' : 'none');
    }
    </script>[/js]

    HTML:
    1. <H1>Раскрытие блока при клике на ссылку</H1>
    2. <option>Выберите категорию</option>
    3. <option onclick='showdiv(this.value)'>A</option>
    4. <option onclick='showdiv(this.value)'>B</option>
    5.  
    6. <div id="mydiv" style="display:none">C</DIV>
    При выборе пункта A или B див теперь появляется, а как сделать, что бы при выборе C он опять пропадал?
     
  6. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    То есть просто напиши <select onchange='showdiv(this.value)'>, а у всех option все onclick/onchange убери.
     
  7. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Мне необходимо что бы при выборе пунктов A и B появлялся див, а при выборе C он опять скрывался.
    В вашем случае, при выборе любого пункта, див появляется.
     
  8. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    у элемента option есть параметры value и text
    почитай про них.
     
  9. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Сделал это вот так:

    Код (Text):
    1.  
    2. <style>
    3. #box1 {
    4. display:none;
    5. }
    6. </style>
    7.  
    8. <script language="javascript" src="jquery-1.4.2.min.js"></script>
    9. <script language="JavaScript" type="text/javascript">
    10. jQuery(function()
    11. {
    12. jQuery('.q1').click(function()
    13. {
    14. jQuery('#box1').slideDown(100);
    15. });
    16.  
    17. jQuery('.q2').click(function()
    18. {
    19. jQuery('#box1').slideUp(100);
    20. });
    21. });
    22.  
    23. </script>
    24.  
    25. <select name="">
    26. <option class ="q2">AAAAA</option>
    27. <option class ="q1">BBBBB</option>
    28. <option class ="q1">CCCCC</option>
    29. <option class ="q2">DDDDD</option>
    30.  
    31. </select>
    32.  
    33. <div id="box1">Тут какой то текст</div>
    Вопрос закрыт, всем спасибо за помощь
     
  10. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    скажите мне что это проще. или что он хоть что-то понял.
     
  11. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Тот вариант который вы мне предложили - проще, но я не знал, как при выборе другого пункта скрыть див. К сожалению Jscrips я знаю плохо. Почитал уроки по jquery, сделал по аналогии, в принципе очень простой код получился.
     
  12. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    так что такое <select ...><option ...> ...</select>
    ?
    и какой там синтаксис и значения?
     
  13. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Что вы имеете в виду? Почему не прописаны value, name? Это был не рабочий код, просто для примера, значения не важны в данном случае, меня интересовал результат.
     
  14. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Чуть позже напишу код, ради примера.
     
  15. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    ну как обычно.
    "колеса не важны, мне важно чтобы она ехала"