Autor Zpráva
Suta
Profil
//předpokládejme, že mám (xml) mezi tagy <jmeno_hrace> a </jmeno_hrace> nějaký obsah, např.:
<jmeno_hrace>Franta</jmeno_hrace>


//pro vypsání obsahu tagu použiji např.
var jmenoHrace = getElementsByTagName("jmeno_hrace");
var obsah_tagu = jmenoHrace.item(0).firstChild.data.toString();


To je v pohodě. Na co však nemůžu přijít je to, jak zjistit, že ten tag skutečně existuje (tedy jak zjistit, že neexistuje).... Problém je v tom, že když použiji výše uvedené
var jmenoHrace = getElementsByTagName("jmeno_hrace");

tak do proměnné jmenoHrace se uloží objekt (i když ten tag neexistuje), takže jsem ve slepé uličce...

Jinými slovy, jak zapsat
EXISTUJE-LI TAG, PAK UDĚLEJ...

Poznámka: konkrétně dostávám přes Ajax ze serveru xml odpověď, kde pokaždé obdržím jiný obsah (jiné tagy), a já chci na základě přitomnosti či nepřítomosti jednotlivých tagů vykonávat příkazy javascriptu.

Dík za radu.
Leo
Profil
"tak do proměnné jmenoHrace se uloží objekt"

Protoze to vraci pole, ne odkaz na jeden element, Leo
Hooonza
Profil
Jinými slovy, jak zapsat
EXISTUJE-LI TAG, PAK UDĚLEJ...


No, to nevím, jestli to jde zapsat, ale jde se zeptat, jestli existuje nějaký (aspoň první) prvek toho objektu:


var jmenoHrace = getElementsByTagName("jmeno_hrace");
if (document.getElementsByTagName("jmenoHrace")[0])   obsah_tagu = jmenoHrace.item(0).firstChild.data.toString(); 


a to nakonec splní stejnou úlohu, ne?
Suta
Profil
Hooonza
Děkuji, to je to co jsem potřeboval.
peta
Profil
Suta
var pole_jmena = getElementsByTagName("jmeno_hrace");
alert(pole_jmena);

to, od Hooonza ti mozna muze nekde v JS konzoli vypisovat chybu
Chamurappi
Profil
Reaguji na petu:
Tím alertem snad zjistí existenci? V pole_jmena je vždy objekt, nikdy ne null/undefined/false.

to, od Hooonza ti mozna muze nekde v JS konzoli vypisovat chybu
Proč a kde?
Suta
Profil
peta
Již vícekrát jsem si všiml, že některé tvé příspěvky v diskuzi zkrátka moc dobře nechápu a postrádám přínos pro ty, komu jsou určeny... Nechci rýpat, vážím si jakékoliv rady a určitě patříš mezi ty, kdo dokáží poradit, přesto myslím, že - byť odpovídáš poměrně hojně - bys mohl "radit" více smysluplně. S ohledem na uvedené v příspěvcích výše Tvé radě opravdu nerozumím.
peta
Profil
Chamurappi
:) chybicka, melo byt alert(pole_jmena.length)
Chtel jsem zobrazit cislo.

to druhe, s tou existenci, to se mi ted stalo s nejakym objektem. Bohuzel ti to ted nereknu, protoze jsem prosel dvoudenim skolenim na ibm websphere a ma plnou hlavu nesmyslu, nevzpomenu si, co jsem delal minuly ct, pa.
Konkretne zminene by melo fungovat. jestli ti to udela radost.


Suta
:) Slo by to, dokonce konkretne, ale nekdy je lepsi lidi navest, jak hledat pomoc, treba googlem. Jednak to vic potesi, kdyz si sam poradis a druhak, nepadaji tu tolik dotazy, ktere se daji v pohode najit.
Nejhorsi tazajici je ten, co se nepodiva na JS priklady. Tomu uz neni pomoci :)
Hooonza
Profil
peta
:) Slo by to, dokonce konkretne, ale nekdy je lepsi lidi navest, jak hledat pomoc, treba googlem.
No jenže radit někomu přes internet už samo o sobě znamená snížení srozumitelnosti, je to tak trošku jako couvat s traktorem s 10 valníky. A když srozumitelnost budeš ještě záměrně snižovat, což různé nekonkrétní "návody" vždycky jsou, máš velkou šanci, že tvoje příspěvky budou nanic. Když sem někdo přijde, chce pomoc, ne teorie. To, jestli bude dál přemýšlet, jaksi záleží jenom na něm, s tím nic neuděláš - leda to můžeš pokazit. Platí pravidlo KISS - keep it short and simple, to je základ srozumitelnosti :-)
Suta
Profil
peta
Hooonza
On má peta samozřejmě taky pravdu, je třeba lidi navést, aby se jen "neptali" na řešení, ovšem když už navést, tak srozumitelně. Jinak upřesněnému alertu již rozumím, díky.

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:

0