Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dynamiczne pole <select>
Forum PHP.pl > Forum > Przedszkole
Wojti
Witam,

chyba nie jestem w stanie zrobic tego w php ale moze jednak?

Chcialbym majac dwa pola rozwijane typu <select> w formularzu dostepne pola w drugim zalezaly od wybranej opcji w pierwszym.

Probowalem cos takiego zrobic w javascript ale tez cos mi nie szlo. Czy ktos z Was moglby mnie naprowadzic jak to zrobic?

Dziekuje

Wojtek
sobstel
w php da sie tylko to zrobic poprzez pzeladowanie strony i umieszczenie odpowiedniego selecta obok.

w javscripcie np. chociazby uzywajac wlasciwosci dipslay
kociou1
W HEAD:
Kod
<script language="JavaScript1.3">
val = new Array();
txt = new Array();
//wartości opcji
val[0] = new Array('nie wybrano');
val[1] = new Array('1', '2', '3', '4');
val[2] = new Array('1', '2', '3', '4');
val[3] = new Array('1', '2');
val[4] = new Array('1', '2');
val[5] = new Array('1', '2');
//tekst wyświetlany
txt[0] = new Array('--');
txt[1] = new Array('1', '2', '3', '4');
txt[2] = new Array('1', '2', '3', '4');
txt[3] = new Array('1', '2');
txt[4] = new Array('1', '2');
txt[5] = new Array('1', '2');

function i_clear(s) {
 while(s.options.length)s.options[0] = null;
}
function i_add(s,v,t) {
 s.options[s.options.length] = new Option(t,v);
}
function i_load(p,s) {
 i_clear(s);
 for(i = 0; i < val[p].length; i++)
  i_add(s, val[p][i], txt[p][i])
}
</SCRIPT>


w BODY:
Kod
<SELECT NAME="typPokoju" CLASS="daneMenu" STYLE="margin-bottom: 4; width: 50px;"  onChange="i_load(this.selectedIndex, iloscOsob)">
<OPTION VALUE="nie wybrano">--
<OPTION VALUE="A">A
<OPTION  VALUE="B">B
<OPTION VALUE="C">C
<OPTION VALUE="D">D
<OPTION VALUE="E">E </SELECT>

<!--DRUGI SELECT Z WARTOSCIAMI ZALEŻNYMI OD PIERWSZEGO SELECTA -->
<SELECT STYLE="width: 50px;" NAME="iloscOsob" CLASS="daneMenu" >
<OPTION> </SELECT>


Zależności między selectami ustawiasz w tabliczach val i txt

A - i nie wiem czy działa w przeglądaekach opartych o Gecko (innych niż IE)
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.