Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JS] onChange i <select>, dziwny problem
Bart Henry
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 13.09.2012

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


Witam. Natrafiłem na problem, który rozwiązałem, lecz nie rozumiem skąd jego obecność. Chciałbym wiedzieć gdzie popełniłem błąd, aby w przyszłości uniknąć jego wystąpienia. Dlatego tu przybyłem.

Chciałem zrobić pole <select>, w którym do wyboru byłoby 'pl' i 'en', które odpowiadają za język obecnie wyświetlanych wpisów. Domyślnie jedna z tych opcji jest wybrana. Ma to działać tak, że po wybraniu drugiej opcji z rozwijanej listy, automatycznie ładują się wpisy w tym drugim języku. Zastosowałem zdarzenie onChange.

Kod selecta:
  1. <select name="langselect" id="langselect" >
  2. <option value="pl" selected>pl</option>
  3. <option value="en">en</option>

Kod oskryptowania:
[JAVASCRIPT] pobierz, plaintext
  1. <script>
  2. var langselect = document.getElementById('langselect');
  3. langselect.onChange=reload_page(langselect.selectedIndex);
  4.  
  5. function reload_page(index){
  6. (...)
  7. }
  8. </script>
[JAVASCRIPT] pobierz, plaintext

Resztę kodu pominąłem, ponieważ nie ma znaczenia. Takie coś nie działa. Funkcja reload_page uruchamia się raz i to przy załadowaniu strony. Potem zmiana języka w <select> nie daje żadnych rezultatów, nic się nie dzieje.

Działa za to, gdy usunę linijkę:
Kod
langselect.onChange=reload_page(langselect.selectedIndex);

i wrzucę owe onChange do kodu html w <select>, aby wygladało tak:
  1. <select name="langselect" id="langselect" onChange="reload_page(langselect.selectedIndex)">
  2. <option value="pl" selected>pl</option>
  3. <option value="en">en</option>

Jaki jest błąd w tym moim pierwszym rozumowaniu? Czemu to nie działało?
Go to the top of the page
+Quote Post

Posty w temacie


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 - 06:57