Autor Zpráva
honza.vochi
Profil *
Ahoj, mám tento formulář:
<label id="neco">Zaškrtni1</id><input type="checkbox" id="neco" value="1" onclick="akce(this.value)">
<label id="neco2">Zaškrtni2</id><input type="checkbox" id="neco2" value="2" onclick="akce(this.value)">

funkce akce() vezme vždy ID toho checkboxu a provádí s ním další akce, ale řeším něco jiného. chci vypsat text v labelu, jehož checkbox byl zaškrtnut (když kliknu na checkbox1, vypíše se Zaškrtni1)
Díky
Str4wberry
Profil
Vypsat kam? K čemu konkrétnímu to potřebujete?
honza.vochi
Profil *
třeba do alertu to je jedno, ale chci to vkládat potom do řádku tabulky.
Str4wberry
Profil
Takže otázka zní, jak se z <input>u dostat k textu <label>u?

Při současném HTML (budu-li ignorovat překlepy jako </id> nebo <label id) by se musel hledat předchozí element nebo <label> s atributem for shodným s this.id.

Změna struktury HTML by to výrazně ulehčila.
pako
Profil *
[#4] Str4wberry: firefox nepozna vlastnost innerText, ie do verzie 8 vratane zasa textContent
Joker
Profil
pako [#5]:
Nevidím žádnou souvislost s tím, co psal Str4wberry.
Str4wberry
Profil
Reakce na Jokera:
Asi se to vztahuje k té ukázce, kde se využívá innerText, který je nefunkční ve Firefoxu.

Bude tedy vhodné text <label>u obalit nějakým tagem nebo obalit společným tagem <label> + <input> a použít innerHTML.
Joker
Profil
Str4wberry:
Aha.
To asi bude vhodné v každém případě, mít nějakým tagem obalený jenom ten text se kterým se má pracovat.
honza.vochi
Profil *
nějak se v tom začínám ztrácet. myslel jsem že půjde vybrat label, který má stejný value jako je id toho checkboxu...
Joker
Profil
honza.vochi:
Label ale nemá value. Přes atribut for by to samozřejmě šlo.
Ale jednodušší je dát input dovnitř toho labelu (což není nijak „špatně“ nebo problematické) a pak to zaměřit přes rodiče. Nebo ještě lépe dát ten text třeba do spanu a pak zaměřit rodiče a v něm span.

Ale víceméně jen opisuji to, co píše [#4] Str4wberry.
honza.vochi
Profil *
tak mám něco takového:
http://kod.djpw.cz/zob
To html mám tak jak jste myslel? jenom s tím javascriptem si nevím moc rady, zkusil jsem pár pokusů a nefunguje mi to
pako
Profil *
toto je trochu upraveny povodny [#4] Str4wberryho prispevok: http://kod.djpw.cz/dpb, ktory pojde aj vo firefoxe
honza.vochi
Profil *
Díky, funguje to

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: