Autor Zpráva
KrendaD
Profil *
Zdravím všechny, potřeboval bych poradit, jak přistupovat k poli složeného z HTML prvků pomocí javascriptu. Dám příklad: potřebuji zjistit, jaký řetězec je mezi tagy <span></span>. Když je to jeden prvek, tak je to v pohodě

<span id="test_id">popisek</span>
<a href="#" onclick="javascript: testFunkce()">start</a>

function testFunkce() {	
	span = document.getElementById("test_id").innerHTML;
	
	alert(span);
}


Bohužel ale nevím, jak to mám udělat s polem prvků:

<span id="test_id[]">popisek</span>
<span id="test_id[]">popisek_2</span>
<span id="test_id[]">popisek_3</span>


Budu vděčný za každou radu. Díky.
Chamurappi
Profil
Reaguji na KrendaDa:
Viz Dvojí přístup ke členu (vlastnosti/metodě) objektu.
Ale tobě jde koukám o id, nikoliv o formulářové prvky s name. Metoda document.getElementById neumí vrátit pole prvků. Můžeš ale najít všechny potomky v určitém rodiči (kolekce childNodes) a z nich vybrat <span>y. Nebo najít všechny <span>y metodou getElementsByTagName a ty si profiltrovat podle atributu id.
KrendaD
Profil *
Nejde mi o to jak k prvku přistupuji (jestli pomocí ID nebo Name), ale pomocí prvku Name mi to bohužel nešlo, proto jsem zvolil ID. Zkoušel jsem něco ve tvaru:

<span name="test_name">popisek</span><br />
<a href="#" onclick="javascript: testFunkce()">start</a>

function testFunkce() {	
	span = document.getElementsByName("test_name").innerHTML;
	
	alert(span);
}


Ale bez úspěchu. V podstatě mi jde jen o to dostat řetězec, který je obsažen uvnitř <span>u a název toho <span>u je pole prvků. Nevím, jestli jsem to dobře vysvětlil, ale z příkladu to bude jistě patrné:

<span name="test_name[]">popisek</span>
<span name="test_name[]">popisek_2</span>
<span name="test_name[]">popisek_3</span>
_es
Profil
KrendaD:
V podstatě mi jde jen o to dostat řetězec, který je obsažen uvnitř <span>u
Ktorého spanu?
název toho <span>u je pole prvků
V tom tvojom kóde majú tri spany rovnaký názov - atribút name. Názov je textový reťazec, nie pole.
V [#2] to máš snáď vysvetlené dostatočne, stačí len trochu snahy to pochopiť.

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:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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

0