Autor Zpráva
Desaster
Profil
Ahoj mužu poprosit o pomoc uz si s tim lámu hlavu týden a nemužu přijít na zpusob jak dostat po kliknutí na jednotlivý span 1-100 hodnotu id bez dlouhého zapisování jednotlivých scriptů pro kazdý ze spanů.S javascriptem teprve začínám takže neumim vše takže omluvte neohrabanost kódů.

<span id="pole1">1</span><br>
<span id="pole2">2</span><br>
<span id="pole3">3</span><br>
...(až)...<span id="pole100">3</span>

Vím jak dostat ze spanu id ale jen dlouhim spůsobem který je pro danou věc nepřijatelný.

<script>
x = document.all.pole1.id;
document.getElementById(x).innerHTML = "Text";
x = document.all.pole2.id;
document.getElementById(x).innerHTML = "Text";
x = document.all.pole3.id;
document.getElementById(x).innerHTML = "Text";
...(až)...x = document.all.pole100.id;document.getElementById(x).innerHTML = "Text";
</script>
Chamurappi
Profil
Reaguji na Desastera:
x = document.all.pole1.id;
document.getElementById(x).innerHTML = "Text";
Tohle je trochu zvláštní. Pomocí „document.all.pole1“ nejprve najdeš prvek s ID „pole1“, zapíšeš si to jeho ID do proměnné, pak pomocí document.getElementId opět najdeš prvek s tím uloženým ID a zapíšeš něco do jeho innerHTML.

Místo dlouhích spůsobů se užívají cykly. Třeba takhle:
<script>
for(var i = 1; i <= 100; i++)
{
  document.getElementById("pole" + i).innerHTML = "Text";
}
</script>
yFang
Profil
Nějak takhle?
Nebo jsem to špatně pochopil? :-)
Nox
Profil
Zjedodušení určitě přinese obalení spanů nějakým polem s ID třeba "spany"
a pak jestli chápu dobře chceš do všech napsat "text" ? Bylo by lepší co je přesně tvým cílem, možná že ten postup se získáváním
id není dobrý...pokud chceš vybrat všechny spany tak třeba


spany=document.getElementById("spany").getElementsByTagName("span");
 var pocet=spany.length;
for(a=0;a<pocet;a++){
 spany[a].innerHTML="text";
 }
Desaster
Profil
super díky to sem potřeboval fakt moc dik za pomoc. pochopil si to skvěle

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: