getElementsByName Problem
daniel_909
- javascript
Hallo, ich habe folgendes kuriose Problem ..
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.
Woran liegt das und warum funktioniert das überhaupt? Es wäre super, wenn mir das einer sagen könnte :o)!
<html><head><script language="JavaScript">
function my_view(my_name){
document.getElementsByName(my_name)[0].style.display="block";
}
</script></head><body bgcolor="#FFFFFF" text="#000000">
<div><a href="javascript:my_view(5);">test</a></div>
<div id="5" style="display:none">hallo welt</div>
</body></html>
Danke, Daniel
Hi,
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.
div hat kein name-Attribut.
5 ist kein sinnvoller Wert für eine id, id-Werte müssen mit einem Buchstaben beginnen.
Woran liegt das und warum funktioniert das überhaupt? Es wäre super, wenn mir das einer sagen könnte :o)!
Welcher Browser?
Sinnvoll wäre, eine gültige id und getElementById zu verwenden.
cu,
Andreas
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
*lach* ... na mehr konnte ich ja gar nicht falsch machen ;o)!
Danke Euch!
So ist das halt wenn man JavaScript nur mal gelegentlich für optische Ergänzungen nutzt und sich nicht wirklich ernsthaft damit beschäftigt.
Na da werde ich die Gelegenheit gleich mal nutzen und mir den Firefox auch auf den Laptop packen und mir ein paar mehr Grundlagen für JavaScript aneignen!
Schönen Tag noch, Daniel
Hello out there!
[…] und mir ein paar mehr Grundlagen für JavaScript aneignen!
Dann kannst du gleich mit dem richtigen Einbinden von JavaScript-Bereichen in HTML anfangen.
<script language="JavaScript">
So nicht.
See ya up the road,
Gunnar