Autor | Zpráva | ||
---|---|---|---|
loping Profil |
#1 · Zasláno: 13. 3. 2014, 08:58:46
ahoj, mám problém (asi) nekompatibility prohlížečů .. v IE 8 OK, v google chrome a mozille nefunguje ...
.... potřebuji vytáhnout textový řetězec (HREF) z jednotlivých polí selectu <select size="4" id="kraj_sel" onchange="vypis_okresu(this)"> <option value=1 id=3 href="url(obrazky/KV.png)">Karlovarský kraj</option> <option value=4 id=7 href="url(obrazky/US.png)">Ústecký kraj</option> <option value=11 id=7 href="url(obrazky/PLZ.png)">Plzeňský kraj</option> <option value=18 id=12 href="url(obrazky/STR.png)">Středočeský kraj</option> <option value=30 id=1 href="url(obrazky/PR.png)">Hlavní město Praha</option> <option value=31 id=4 href="url(obrazky/LI.png)">Liberecký kraj</option> <option value=35 id=5 href="url(obrazky/HR.png)">Královéhradecký kraj</option> <option value=40 id=7 href="url(obrazky/JC.png)">Jihočeský kraj</option> <option value=47 id=5 href="url(obrazky/VYS.png)">Kraj Vysočina</option> <option value=52 id=4 href="url(obrazky/PA.png)">Pardubický kraj</option> <option value=56 id=7 href="url(obrazky/JM.png)">Jihomoravský kraj</option> <option value=63 id=5 href="url(obrazky/OL.png)">Olomoucký kraj</option> <option value=68 id=4 href="url(obrazky/ZL.png)">Zlínský kraj</option> <option value=72 id=6 href="url(obrazky/MSK.png)">Moravskoslezský kraj</option> </select> function vypis_okresu(cislo_okr) { var kraj_id = document.getElementById('kraj_sel'); var kraj_adresa = kraj_id.options[kraj_id.selectedIndex].href; //vrati mi cestu k obrazku kraje (v IE funguje; GCH, MOZ nefunguje) //kdyz misto ".href" zkusim ".value" ci ".id" .. vse se mi udela spravne .. viz test nize alertem alert(kraj_id.options[kraj_id.selectedIndex].href); } .... neví někdo čím to může být?? Děkuji |
||
_es Profil |
loping:
Nedávaj rovnaké id odlišným elementom. Element option nemá „normálne“ atribút href - viď príbuzné vlákno reference to undefined property (jak se mu vyhnout)?.
|
||
loping Profil |
#3 · Zasláno: 13. 3. 2014, 09:17:41
_es:
pravdou je, že já využívám atributy "value", "id" a "href" pouze jako nosiče nějakých hodnot .. jak se dané atributy budou jmenovat je mi úplně jedno .. rozumím tvé odpovědi, ale potom bohužel nevím, jak udělat v optionu tři atributy v kterých budu mít své informace |
||
peta Profil |
Treba to oddelit strednikem?
<option value=68;4;obrazky/ZL.png">Zlínský kraj</option> alert(x.value.split(';')); Nebo udelat js pole? pole = { 68: [4,'obrazky/ZL.png'] } a = x.value * 1; alert([a, pole[a]]); Je dobre si svoje atributy pojmenovat se stejnym prefixem, jak to delaji editory, treba kupu-id, kupu-href. id je id a je jedinecne, nemuzes pouzit na dvou mistech id=4 a id=4. A koukam, ze v tom odkazu dokonce es zminuje lepsi prefix data-. |
||
Gogo_v Profil |
#5 · Zasláno: 13. 3. 2014, 12:03:51
Potřeboval jsem kdysi taky tři hodnoty ze selectu použil jsem na to label a fungovalo to ve vsech prohlizecich ...
<select> <select size="4" id="kraj_sel" onchange="vypis_okresu(this)"> <option value=1 id=3 label="url(obrazky/KV.png)">Karlovarský kraj</option> <option value=4 id=7 label="url(obrazky/US.png)">Ústecký kraj</option> ... </select> var selectmenu=document.getElementById('kraj_sel'); var chosenoption = selectmenu.options[selectmenu.selectedIndex] alert (chosenoption.label) Třeba ti to pomůže |
||
loping Profil |
#6 · Zasláno: 13. 3. 2014, 13:28:10
_es: díky, máš pravdu, že to asi není správné .. vyřeším to ..
peta: díky, dobré řešení .. zkoušel jsem prozatím velmi rychle a vypadá to, že to bude fungovat Gogo_v: zkoušel jsem label (to by bylo pro můj současný kod nejrychleji upravitelné), nicméně když to napíšu do labelu, tak se mi ona cesta k obrázku propíše i do optionu (tj. nahrají do "Karlovarský kraj") |
||
Časová prodleva: 10 let
|
0