Podwójne rozwijane listy wartości

głosy
1

Myślę o dwa listy rozwijanej jeden zależnej od drugiego. Zarówno rozwijanej listy mają wartości z bazy danych. W tym przypadku, który z nich jest najlepszy sposób.

  1. Pobrać wszystkie wartości z bazy danych przy użyciu zwykłego PHP następnie przechowywać je w zmiennej JavaScript, później szukać sekund rozwijanej listy (jeśli wartość pierwszej rozwijanej liście na zmiany wartości) w zmiennej JavaScript (array).

  2. Jeśli pierwszy rozwijanej liście zmian wartości jest następnie pobrać wartości dla drugiej listy rozwijanej z bazą danych za pomocą technologii AJAX (jQuery).

Utwórz 25/11/2012 o 09:35
użytkownik
W innych językach...                            


2 odpowiedzi

głosy
0

To zależy od wielu rzeczy.

trzeba mieć, aby pokazać pierwszy rozwijaną przez pobierania danych z bazy danych,

jeśli dane dla każdego wybranego rekordu z listy rozwijanej jeden jest duży a następnie dostać go za pomocą ajax jeszcze zrobić js zmiennych i wypełnić go przy użyciu javascript na liście rozwijanej wybierz pierwszego.

Jak na swoje kryteria, to będzie najlepsze dla Twojego iść z Ajax koniec ładowania, który sprawi, że strona załadowała się szybko podczas ładowania i można uzyskać dane dla drugiej listy rozwijanej przy użyciu ajax.

Odpowiedział 25/11/2012 o 09:38
źródło użytkownik

głosy
0

Obie alternatywy, które zostały wskazane ma wady i zalety, decyzja zależy od tego jak to plusy i minusy wpływa na aplikację:

Pobrać wszystkie wartości z bazy danych przy użyciu zwykłego PHP następnie przechowywać je w zmiennej JavaScript, później szukać sekund rozwijanej listy (jeśli wartość pierwszej rozwijanej liście na zmiany wartości) w zmiennej JavaScript (array).

Plusy:

  • Minimalizuje petycje http, trzeba tylko jedną prośbę, aby odzyskać całość danych.
  • Minimalizuje kwerenda jest potrzebne w bazie danych, na ogół tylko wykonać jedno zapytanie.

Cons:

  • Zwiększa ilość pamięci używanej jeśli masz duże ilości danych.
  • Jeśli dane zmienia się nieustannie, użytkownicy nie widzą zmian aż odświeżyć całą stronę.

Jeśli pierwszy rozwijanej liście zmian wartości jest następnie pobrać wartości dla drugiej listy rozwijanej z bazą danych za pomocą technologii AJAX (jQuery).

Plusy:

  • Nie trzeba do przechowywania wszystkich danych w pamięci całych jedynie dane, które zostaną wykorzystane, co zmniejsza ilość potrzebnej pamięci.
  • Twoje dane są aktualizowane za każdym razem, bez konieczności przeładowania strony tylko zmieniając wybór.

Cons:

  • Trzeba wykonać kilka petycji HTTP i biegnie querys z bazą danych przy każdej zmianie wyboru.

Osobiście preferuję metodę 2, jeśli ilość danych jest stosunkowo duża i wydajność nie jest koniecznością.

Odpowiedział 25/11/2012 o 09:53
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more