Forum » Izdelava spletišč » Malo težav z javascript array-i oz. neznanja...
Malo težav z javascript array-i oz. neznanja...
HellBird ::
Pozdrav!
Imam dva arraya:
strani = [['3', 'dcvdfgvdg'],['1', 'Prva stran'],['2', 'sdfds'],['', '']];
podstrani = [['4', 'dcvdfgvdg'],['', ''] ];
Spodaj pa imam to kodo:
in..
Rad bi naredil, da ko uporabnik v select-u z imenom stran_vrsta izbere opcijo z vrednostjo 2, da se znotraj select-a z imenom stran_zgornja, vnesejo opcije iz tabele strani, kot je prikazano v zgornjem delu kode, z document.write. Ko pa bo uporabnik v select-u z imenom stran_vrsta izbral opcijo z vrednostjo 3, pa naj bi se napolnil select z imenom stran_zgornja, z vrednostmi tabele podstrani, po enakem postopku kot naj bi se napolnil iz tabele strani.
Nekako sem si to jaz najlažje predstavljal, da naredim trodimenzionalno tabelo strani, v strani[0] bi dal zdajšnja polja tabele strani, v strani[1] pa bi dal polja zdajšnje tabele podstrani, vendar mi to nekako ni uspelo, ker nisem znal prešteti velikosti tabel strani[0] in strani[1], tako da sem obral to, pomojem, slabšo pot.
Vem, da bo potrebno v prvi select dodati onchange="" in nekaj noter, pa ne vem ravno kaj, in javascript v drugem select-u tako predelati, da se bo select spreminjal glede na onchange v prvem select-u.
Hvala za pomoč!
Mimogrede, kako lahko na ST forum dodaš HTML kodo, ko pišeš objavo?
LP
Imam dva arraya:
strani = [['3', 'dcvdfgvdg'],['1', 'Prva stran'],['2', 'sdfds'],['', '']];
podstrani = [['4', 'dcvdfgvdg'],['', ''] ];
Spodaj pa imam to kodo:
in..
Rad bi naredil, da ko uporabnik v select-u z imenom stran_vrsta izbere opcijo z vrednostjo 2, da se znotraj select-a z imenom stran_zgornja, vnesejo opcije iz tabele strani, kot je prikazano v zgornjem delu kode, z document.write. Ko pa bo uporabnik v select-u z imenom stran_vrsta izbral opcijo z vrednostjo 3, pa naj bi se napolnil select z imenom stran_zgornja, z vrednostmi tabele podstrani, po enakem postopku kot naj bi se napolnil iz tabele strani.
Nekako sem si to jaz najlažje predstavljal, da naredim trodimenzionalno tabelo strani, v strani[0] bi dal zdajšnja polja tabele strani, v strani[1] pa bi dal polja zdajšnje tabele podstrani, vendar mi to nekako ni uspelo, ker nisem znal prešteti velikosti tabel strani[0] in strani[1], tako da sem obral to, pomojem, slabšo pot.
Vem, da bo potrebno v prvi select dodati onchange="" in nekaj noter, pa ne vem ravno kaj, in javascript v drugem select-u tako predelati, da se bo select spreminjal glede na onchange v prvem select-u.
Hvala za pomoč!
Mimogrede, kako lahko na ST forum dodaš HTML kodo, ko pišeš objavo?
LP
rokpok ::
Eden izmed načinov da dodaš onchange je ta:
V JavaScriptu definiraš funkcijo:
Koncept je približno tak, drugače pa ti bo tudi google znal pomagati pri tem. Kodo pa dodaš na slo-tech tako:
(oglati oklepaj)st.koda(oglati zaklepaj)tvoja koda(oglati oklepaj)/st.koda(oglati zaklepaj)
Lp,
Rok
<select id="mojselect" onchange="neka_funkcija()">
V JavaScriptu definiraš funkcijo:
function neka_funkcija () { selectBox = document.getElementById ("mojselect"); selectedValue = selectBox.options[selectBox.selectedIndex]; /*Delaš naprej, s tem karkoli bi pač rad*/ }
Koncept je približno tak, drugače pa ti bo tudi google znal pomagati pri tem. Kodo pa dodaš na slo-tech tako:
(oglati oklepaj)st.koda(oglati zaklepaj)tvoja koda(oglati oklepaj)/st.koda(oglati zaklepaj)
Lp,
Rok
Rad bi bil pingvin.
Zgodovina sprememb…
- spremenil: rokpok ()
HellBird ::
No, to je bilo že zelo v pomoč. zdaj ve samo še muči to, da če v for zanki naredim
Koda pa zdaj zgleda takole:
document.write('<option value="1">sdasd</option>');mi zadevo seveda prikaže na novi strani, ne pa znotraj select box-a. Predvidevam, da bi se to dalo rešiti z AJAX-om, vendar se mi ne sanja kako. Sem tudi malo gledal po googlu in nažalost nisem našel nič v zvezi s tem, kako dodajati nove opcije v select.
Koda pa zdaj zgleda takole:
function menjajOpcije() { selectBox = document.getElementById("selectVrsta"); selectedValue = selectBox.options[selectBox.selectedIndex].value; if(selectedValue == 2) { for(i = 0; i < (stran.length - 1); i++) { document.write('<option value="1">sdasd</option>'); } } }
rokpok ::
No zadeva nima nič z ajax-om. Problem pa rešiš tako:
selectBox.options[i]= new Option('text','value')
Rad bi bil pingvin.
Zgodovina sprememb…
- spremenil: rokpok ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | PHP problemOddelek: Programiranje | 1147 (849) | BivšiUser2 |
» | ASP.NET (C#) - PomočOddelek: Izdelava spletišč | 1119 (896) | Denisj |
» | Baza & c#Oddelek: Programiranje | 4153 (3211) | xardas |
» | [Visual C#] TableAdapterOddelek: Programiranje | 1131 (1007) | detroit |
» | [java] opcijsko oknoOddelek: Programiranje | 2067 (1848) | infiniteLoop |