Mathias Brodala: getElementsByName Problem

Beitrag lesen

Hallo daniel_909.

dies ist die Funktion, welche ich "geschrieben" habe und sie funktioniert NUR, wenn ich das anzuzeigende div mit einer ID="5" versehe. schreibe ich name="5", wie es bei getelementsbyname eigentlich nahe liegt, passiert nichts.

Eine http://de.selfhtml.org/html/referenz/attribute.htm#id_idref_name@title=ID darf nicht mit einer Zahl beginnen, sie ist daher ungültig.

Woran liegt das und warum funktioniert das überhaupt?

Weil Opera und der IE zu gnädig sind. Wenn du das Beispiel im Firefox testest, wirst du sehen, dass es nicht funktioniert:

Fehler: document.getElementsByName(my_name)[0] has no properties
Quelldatei: file://…
Zeile: 4
 ----------
Warnung: reference to undefined property document.getElementsByName(my_name)[0]
Quelldatei: file://…
Zeile: 4

Es wäre super, wenn mir das einer sagen könnte :o)!

[…]
<div id="5" style="display:none">hallo welt</div>

Das http://de.selfhtml.org/html/referenz/attribute.htm#div@title=div–Element verfügt über kein name–Attribut, weshalb es dementsprechend auch nicht per getElementsByName ansprechbar sein darf. Du möchtest sicher http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id@title=getElementById verwenden.

Einen schönen Donnerstag noch.

Gruß, Mathias

--
sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
„It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
[HTML Design Constraints: Logical Markup]