Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wybór jednego formularza uaktywni wybór drugiego
bjen
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.04.2011

Ostrzeżenie: (0%)
-----


Witam.
Mam następujący problem. Chciałbym stworzyć formularz, w którym mam dwa drop-down listy. Gdy wybiorę jakąś wartość z pierwszej, chciałbym, żeby ukazała się druga pod nią, w zależności od dokonanego wyboru pierwszej. Jak to sprytnie zrobić?

Czyli:
Wybieram jakąś wartość z pierwszej listy rozwijanej... po czym pod nią ukazuje się druga w zależności od dokonanego wyboru.

Przekazać do tej samej strony poprzez form method "post" wartość pierwszej i uaktywnić drugą? Czy da się np. jakoś odświeżyć stronę i ukazać druga liste rozwijaną , gdy wybiorę coś z pierwszej ?

Z góry dziękuje za pomoc!

Ten post edytował bjen 3.05.2011, 18:45:54
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
darko
post
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Ogólnie do pierwszego formularza podczepiasz w selektorze onchange="twojaFunkcja(this.value)" a w funkcji odwołując się po ID drugiego formularza ustawiasz odpowiednie wartości poszczególnych pozycji w drugiej liście.


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
bjen
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.04.2011

Ostrzeżenie: (0%)
-----


Rozumiem. Tak zrobiłem, lecz po wybraniu nie widzę żadnego rezultatu. Mój kod:

  1. function wyswietlDropDownList($nazwa, $listaOpcji) {
  2.  
  3. echo '<select name="'.$nazwa.'" onclick="wyswietlPojemnosc(this.value)">';
  4. foreach ($listaOpcji as $rzad) {
  5. echo '<option value='.$rzad['nazwa'].'>'.$rzad['nazwa'].'</option>';
  6. }
  7. echo '</select>';
  8.  
  9. }
  10.  
  11. function wyswietlPojemnosc($nazwa)
  12. {
  13. echo $nazwa;
  14. }


Po wyborze w liście rozwijanej nie widzę żadnej reakcji (nic sie nie dzieje). Widzicie może błąd ?
Go to the top of the page
+Quote Post
darko
post
Post #4





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


omg funkcja wyswietlPojemnosc ma być napisana w javascripcie ohno-smiley.gif


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
bjen
post
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.04.2011

Ostrzeżenie: (0%)
-----


A można by to jakoś obejść ?
Chciałbym aby onchange (czy onclick) odpalił bliźniaczką funkcję do wyswietlDropDownList napisaną w php. Jest taka możliwość ? smile.gif
Go to the top of the page
+Quote Post
darko
post
Post #6





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Oczywiście, że jest:

...

onchange="wyswietlPojemnosc(this.value)"

...
[JAVASCRIPT] pobierz, plaintext
  1. <script>
  2. function wyswietlPojemnosc(v) {
  3. window.location.href = 'www.example.com?value=' + v;
  4. }
  5. </script>
[JAVASCRIPT] pobierz, plaintext

Odbędzie się to poprzez przekierowanie na tę samą stronę z wybranym parametrem value, który będzie dostępny w skrypcie php pod postacią $_GET['value']
W praktyce taką operację powinno wykonać się bez przekierowania pobierając ajaxem po jakimś parametrze odpowiednie dane dla selektora numer dwa.


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 15:49