За последние 24 часа нас посетили 22647 программистов и 1546 роботов. Сейчас ищут 912 программистов ...

динамический селект

Тема в разделе "PHP для новичков", создана пользователем berkoot7, 11 ноя 2009.

  1. berkoot7

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

    С нами с:
    23 фев 2009
    Сообщения:
    82
    Симпатии:
    0
    здраствуйте. сразу скажу вопрос не о том как реализовать 2 или 3 динамических селекта.
    проблемка немного в другом.
    допустим есть один селект. для примера зададим ему два значения "windows" и "linux".
    после выбора какого-либо значения под селектом должен появиться текст, а также поля типо texterea и кнопка submit
    как такое реализовать? знаю что без javascript не обойтись, никак не получается :(

    плиз, хелп.
     
  2. alexy

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

    С нами с:
    4 янв 2009
    Сообщения:
    74
    Симпатии:
    0
    Адрес:
    Россия, г. Белгород
    HTML:
    1.  
    2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    3.     <head>
    4.         <meta http-equiv="Content-Type" content="text/html; charset=utf8">
    5.         <title>Test</title>
    6.         <script type="text/javascript">
    7.             function show_block(id)
    8.             {
    9.                 document.getElementById(id).style.visibility='visible';
    10.             }
    11.         </script>
    12.     </head>
    13.     <body>
    14.         <form action="">
    15.             <!-- список -->
    16.             <select onchange="show_block('hidden_block')">
    17.                 <option>Linux</option>
    18.                 <option>Windows</option>
    19.             </select>
    20.             <!-- скрытый блок -->
    21.             <div style="visibility:hidden;" id="hidden_block">
    22.            
    23.                 <textarea rows="5" cols="15"></textarea>               
    24.                 <input type="submit">
    25.             </div>
    26.         </form>
    27.        
    28.     </body>
    29. </html>
    30.  
    Что-нибудь вроде этого
     
  3. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    1. Готовим страницу: создаем форму с select и думаем куда будем пихать текст, textarea и submit. В конец формы? В div?
    2. Ловим событие "выбрано" и пишем, в определенное в пункте 1 место, необходимый html код.
     
  4. berkoot7

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

    С нами с:
    23 фев 2009
    Сообщения:
    82
    Симпатии:
    0
    to alexy
    маленько не правильно поняли, содержимое разное будет. именно в <div> будет подгружаться инфа, взависимости от выбранного значения в селекте. подгружаться методом include_once "modules/select1.php"; - хотя синтаксис явно другой будет, так как там джаваскрипт
    надеюсь сейчас правильно объяснил что пытаюсь сделать

    to Volt(220)
    а можно ваш второй пункт подробнее? :(
     
  5. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    berkoot7
    myDiv.innerHTML="Здесь всякий текст <textarea>Это текстария</textarea><input type="submit">"

    или jQuery
    $("#myDiv").append("Здесь всякий текст <textarea>Это текстария</textarea><input type="submit">");
     
  6. berkoot7

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

    С нами с:
    23 фев 2009
    Сообщения:
    82
    Симпатии:
    0
    нет, я другое хотел сделать ))
    врочем уже решил проблему, разобрался вроде
    вот получившийся код
    PHP:
    1. <style>
    2.  .myViewLinks { display: none; }
    3.  </style>
    4.  
    5.  <script>
    6.  var toggle = function() {
    7.      var currentDiv = null;
    8.      function open(divElement) {
    9.          divElement.style.display = "block";
    10.          currentDiv = divElement;
    11.      }
    12.      function close(divElement) {
    13.          divElement.style.display = "none";
    14.          currentDiv = null;
    15.      }
    16.      return function(divID) {
    17.      var divElement = document.getElementById(divID);
    18.      if (divElement) {
    19.          if (divElement === currentDiv) {
    20.              close(currentDiv);
    21.          } else if(currentDiv != null) {
    22.              close(currentDiv);
    23.              open(divElement);
    24.          } else open(divElement);
    25.      }
    26.      }
    27.    }();
    28.  </script>
    29.  
    30.  <select>
    31.                  <option onClick="toggle('div1');">Linux</option>
    32.                  <option onClick="toggle('div2');">Windows</option>
    33.              </select>
    34. <br />
    35.  <div class="myViewLinks" id="div1">
    36.  <? echo "kontakt1"; ?>
    37.  </div>
    38.  <div class="myViewLinks" id="div2">
    39.  <? echo "kontakt2"; ?>
    40.  </div>