Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Ukrywanie pól formularza przy wyborze selecta.
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
spenalzo
Szukałem na forum, i próbowałem sam ale nic. A problem następujący: mam pole tekstowe o nazwie 'adres', selecta o nazwie 'kategorie' oraz selecta o nazwie 'wybor'.
I teraz jeżel w selekcie 'wybór' zostanie zaznaczona opcja 'HTML' to chciałbym pokazać inputa 'adres' a ukryć selcta 'kategorie'.
Natomiast jeżeli wybrana zostanie opcja 'produkty' to zeby ukrył sie input i pokazał select 'kategorie'.
Najlepiej, żeby select pokazywał sie na miejscu tego inputa i odwrotnie.

Update:
to są wiersze tabeli więc moze być ukrywanie jednego wiersza, a pokazywanie innego.
Seth
Kod
<html>

  <head>

    <script language="JavaScript">

    function pokaz( wybrano )

    {

      if ( wybrano == 'HTML' )

      {

        dodatkowe_pola.innerHTML = '<select name="kategorie"><option value="kategoria1" selected> kategoria1</option><option value="kategoria2"> kategoria2</option></select>';

      }

      else if ( wybrano == 'produkty' )

      {

        dodatkowe_pola.innerHTML = '<input type="text" name="adres" size="20" maxlength="256">';

      }

    }

    </script>

  </head>

  <body>

    <form action="http://www.example.pl/" method="post">

      <select id="wybor" name="wybor" onChange="pokaz( this.value )">

        <option value="nic" selected>--- wybierz z listy ---</option>

        <option value="HTML">HTML</option>

        <option value="produkty">produkty</option>

      </select>

      <div id="dodatkowe_pola"></div>

    </form>

  </body>

</html>
Paul
tez mozesz sprobowac pokombinowac w JS cos w oparciu o style.visibilty - hidden i visible;
spenalzo
Dzięki Seth.
daniel111
Chciałbym odgrzać ten temat, bo skrypt Setha jest ok, ale nie działa pod Netscapem ... a to duża wada ...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.