![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 25.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam problem z zaleznymi selectami pod IE6 oraz IE7 - pod firefox działają poprawnie. Wydaje mi sie, ze blad jest gdzies w wywolaniu funkcji, gdyz w tym miejscu otrzymuje komunikat bledu. Siedze juz nad tym drugi dzien, jednak nie moge wyeliminowac tego bledu.
Fukcja w javascript jest taka: function List(x,y,i,t) { var O={ '7':{'27':'Sieci wodne i kanalizacyjne','26':'Składowiska odpadów','25':'Spalarnie odpadów','24':'Oczyszczalnie ścieków', '23':'Przemysłowe instalacje ochrony środowiska',}, '6':{'11':'Obiekty wielkokubaturowe','10':'Obiekty handlowe','9':'Obiekty użyteczności publicznej','8':'Obiekty biurowe', '7':'Obiekty mieszkalne'}, '5':{'18':'Miejska infrastruktura komunikacyjna','17':'Obwodnice','16':'Drogi krajowe',}, '4':{'28':'Instalacje dla przemysłu energetycznego','22':'Instalacje przemysłowe','21':'Konstrukcje stalowe', '20':'Hale magazynowe i centra logistyczne','19':'Hale przemysłowe',}, '3':{'15':'Obiekty infrastrukturalne','14':'Konstrukcje podziemne','13':'Wiadukty','12':'Mosty',} } while(y[0])y.remove(0) for(i in O[x]){ y.appendChild(t=document.createElement('option')).text=O[x][t.value=i] } } pierwszy select jest taki: <select name="branche" onchange="List(this.value,this.form.investments);"> <option value="0">-- Wybierz --</option> <option value="7">Budownictwo ochrony środowiska</option> <option value="6">Budownictwo ogólne</option> <option value="5">Budownictwo drogowe</option> <option value="4">Budownictwo przemysłowe</option> <option value="3">Budownictwo inżynierskie</option> </select> drugi, zalezny od tego wyzej: <select name="investments"> <option value="0">-- Wybierz branże --</option> </select> W firefox działają poprawnie, w IE dostaje komunikat ze oczekiwano obietku. Tak jak mowie, podejrzewam ze blad jest w tym wywolaniu: List(this.value,this.form.investments), wydaje mi sie, ze ten drugi parametr jest niepoprawny. Bede wdzieczny za wszelkie sugestie i pomoc. Pozdrawiam |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 187 Pomógł: 6 Dołączył: 31.08.2005 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
Zrobiłem tak:
Wygląda to tak jakby w IE wlaściwości nie mogły być nazywane liczbami ( co wydaje się być nawet logiczne ![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 25.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Fakt, z literami jako indeksy działa, ale dlaczego nie działa z indeksami numerycznymi? Gdzie moze lezec problem - pod firefox działa z indeksami numerycznymi.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 187 Pomógł: 6 Dołączył: 31.08.2005 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
Wyobraź sobie jak wygląda pobranie takiej właściwości:
O.7.27 tworząc ją bez iterału i chcąc do niej coś zapisać, na pewno dostaniesz błąd. Co innego jeśli napiszesz: O.q.w Pozwolę sobie przypuszczać ( nie wiem na pewno ), że w Firefox liczby wpisane w apostrofy są od razu interpretowane jako string. W IE zapewne nie ma takiego mechanizmu. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 25.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Całkiem możliwe. Nie byloby problemu, gdybym wartosci selectów tworzy wpisujac z ręki, niestety sa one pobierane z mysql, a value w option to id z tabeli mysql... nie sa one literami, tylko wartosciami liczbowymi.
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Całkiem możliwe. Nie byloby problemu, gdybym wartosci selectów tworzy wpisujac z ręki, niestety sa one pobierane z mysql, a value w option to id z tabeli mysql... nie sa one literami, tylko wartosciami liczbowymi. Może w takim razie po prostu dodawaj jakiś przedrostek przed id. Np. zamiast wypisywać samo 1, 2 wypisuj id1, id2. Jeśli w tym leży problem to powinno pomóc. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 0 Dołączył: 25.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dodałem "id" przed indeksy numeryczne w tablicy, takze wygladaja one teraz tak np "id27", pod ff działa, pod IE niestety nie.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 28.06.2025 - 00:49 |