Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][AJAX][PHP] Wielopoziomowe zależne pola select
Forum PHP.pl > Forum > Przedszkole
php__amator
Hooo hoooo hooo exclamation.gif!
Hej hej witajcie to ja Wasz ulubiony phpamator (nie ulubiony questionmark.gif) smile.gif

Dość długo nic nie pisałem ale w końcu nadszedł ten dzień. Potrzebuję lekkiego wsparcie/podpowiedzi jak zbudować coś takiego:

pierwsze pole select
/ \
wybor pierwszy wybor drugi
| |
lista kolejnych elementow zaleznych od pierwszego pola lista kolejnych elementow zaleznych od drugiego pola

i tak dalej.

Jednym slowem jesli wybiore w pierwszym selekcie np typ urzadzenia to rozwija sie kolejne z listą dostępnych marek
następnie jesli wybiorę markę rowija się pole z modelami danej marki (Dell), następne np linia (Precision/Optiplex) następnie jesli wybiore np Optiplex pojawia się kolejne pole select ze wszystkimi modelami linii Optiplex. Jesli rozwinę listę Optiplex pojawią się modele.

So .... jak najprosciej mozna to zrobic ?
Dobrze byłoby zrobić to na bazie danych pobieranych z tabeli - tak myślę smile.gif
Ale ponieważ JS jest mi jeszcze trochę obcy .... potrzebuję przykładu smile.gif
ewentualnie miejsca gdzie cos takiego moge podpatrzec wink.gif
maviozo
Najbardziej "logiczny" widok zaoferują oczywiście obiekty.
Kod
var data={
    Dell:{
        Precision:["Model1","Model2","Model3"],
        Optiplex:["ModelA","ModelB","ModelC"]
        },
    IIYAMA:{....}
    };

Ale sam JS z bazą danych nie ma wiele wspólnego. JS sobie, baza sobie. Jeżeli chcesz zrobić, by każdorazowe drzewo było pobierane dopiero przy wyborze, potrzebujesz co najmniej jakiś dobry ajax, co zwiększa sporo ilość zapytań przy każdej zmianie.... Zaś kiedy wygenerowałbyś z bazy taki gotowy model, sama implementacja w JS nie powinna być trudna, jedna dobrze skonstruowana funkcja będzie generować kolejne drzewa w nieskończoność.
php__amator
Dziękuję Panowie, dokładnie przestudiuję podane przykłady.
Turson .... jesteś wielki, dziękuję smile.gif


Cytat(maviozo @ 8.12.2014, 22:37:56 ) *
Najbardziej "logiczny" widok zaoferują oczywiście obiekty.
Kod
var data={
    Dell:{
        Precision:["Model1","Model2","Model3"],
        Optiplex:["ModelA","ModelB","ModelC"]
        },
    IIYAMA:{....}
    };

Ale sam JS z bazą danych nie ma wiele wspólnego. JS sobie, baza sobie. Jeżeli chcesz zrobić, by każdorazowe drzewo było pobierane dopiero przy wyborze, potrzebujesz co najmniej jakiś dobry ajax, co zwiększa sporo ilość zapytań przy każdej zmianie.... Zaś kiedy wygenerowałbyś z bazy taki gotowy model, sama implementacja w JS nie powinna być trudna, jedna dobrze skonstruowana funkcja będzie generować kolejne drzewa w nieskończoność.

Oczywiście wiemy, że sam JS z baza danych ma niewiele wspólnego smile.gif
ale w połączeniu z AJAX'em i PHP .... zaczyna mieć trochę więcej smile.gifsmile.gifsmile.gif

dzięki dzieki dzięki
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.