Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [js] dynamiczny select, problem z "pustymi" polami w select
maverik
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 13.08.2004

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


Mam mały problem z dynamicznym wyświetlaniem select'a. Na JS za bardzo sie nie znam no ale może Wy coś mi podpowiecie smile.gif

Oto kod:
  1. document.formularz.elements.month.length = 0;
  2. for(i=d.getMonth(); i < 12; i++)
  3. {
  4. document.formularz.month.options[i-d.getMonth()] =new Option(yearmonth[i], i);
  5. }
  6. document.formularz.month.options[0].selected = true;


No i to niby działa w IE i FF ale w Operze występują "puste" pola na liście.
Oto efekt: obrazek

Jak pozbyć sie tych "pustych" pól?
Go to the top of the page
+Quote Post
kamiseq
post
Post #2





Grupa: Zarejestrowani
Postów: 139
Pomógł: 0
Dołączył: 12.07.2005
Skąd: krakow

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


a nie prosciej ci to zrobic poprzez document.createElement ?

i troche mi sie nie podoba pierwsza linijka, czy ona cokolwiek zmieia?wydawalo mi sie ze length jest tylko informacja, i nie zmienia wlasciwosci obiektu
Go to the top of the page
+Quote Post
maverik
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 13.08.2004

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


Oki, poradziłem sobie tak że tą ostatnią linie zamieniłem na:
  1. document.formularz.month.options[0].defaultSelected = true;

Ale to działało tylko w Operze... w FF i IE nie działa więc wymyśliłem sobie takie coś:
  1. document.formularz.elements.month.length = 0;
  2. for(i=d.getMonth(); i < 12; i++)
  3. {
  4. document.formularz.month.options[i-d.getMonth()] =new Option(yearmonth[i], i);
  5. }
  6. if (navigator.appName == "Opera")
  7. {
  8. document.formularz.month.options[0].defaultSelected = true;
  9. }
  10. else
  11. {
  12. document.formularz.month.options[0].selected = true;
  13. }


Mam nadzieję, że to poprawne rozwiązanie (działa na IE7.0, FF2.0 i O9.2, na innych nie testowałem). Umieszczam je bo może komuś sie przyda smile.gif
Pozdrawiam smile.gif

PS. Temat do zamknięcia.
Go to the top of the page
+Quote Post
misiek172
post
Post #4





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


ale to jest bez sensu... przecierz zawsze domyślnie zaznaczony jest pierwszy element z listy...
ale jeśli już to istnieje możliwość z selectedIndex , według mojej kochanej książeczki działa dosłownie z każdą przeglądarką

Ten post edytował misiek172 29.03.2007, 14:51:16


--------------------
zmoderowano - waga i rozmiar
Go to the top of the page
+Quote Post
maverik
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 13.08.2004

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


Cytat
ale to jest bez sensu... przecierz zawsze domyślnie zaznaczony jest pierwszy element z listy...

to 0 w indexie było domyslne... normalnie to mam tam zmienną w której przekazuje który element ma być wybrany jako domyślny
Cytat
ale jeśli już to istnieje możliwość z selectedIndex , według mojej kochanej książeczki działa dosłownie z każdą przeglądarką

działać to to działa ale dokładnie w taki sam sposób jak pisałem w pierwszym moim poście... występują "puste" pola
Specjalnie zmieniłem na selectedIndex i oto przykład: obrazek
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: 21.08.2025 - 12:09