Hallo,
for (var i = 0; i < len; i++)
{
if (document.forms[0].elements[i].disabled != true)
{
document.forms[0].elements[i].checked = true;
document.getElementById("wahl").firstChild.nodeValue = "JA" ;
^Das ergibt bei jedem Schleifendurchlauf immer wieder das selbe Element.
}
<div id=wahl>Nein</div>
<div id=wahl>JA</div>
<div id=wahl>(deaktiviert)</div>
<div id=wahl>Nein</div>
^Eine ID muss in jedem Dokument _eindeutig_ sein.
Wenn ich nun auf den Button klicke wird nur das erste JA geändert.
Nein, es wird bei jedem Schleifendurchlauf wieder das Element mit der id="wahl" verändert. Das ist das erste Element, welches mit dieser ID notiert wurde.
Aber die anderen wohlen sich einfach nicht ändern?
Wie auch. Welche Elemente sollen sich denn ändern? Das hier: <div id=wahl>(deaktiviert)</div> auch?
Ich habe auch schon <div id=wahl[0]> [...] <div id=wahl[1]> [...]
und in der Funktion es document.getElementById("wahl")[i].firstChild.nodeValue = "JA" ; geschrieben aber das geht erst gar nicht.
Nein, so geht es nicht.
So:
<div id="wahl1">Nein</div>
<div id="wahl2">JA</div>
<div id="wahl3">(deaktiviert)</div>
<div id="wahl4">Nein</div>
und
document.getElementById("wahl" + i).firstChild.nodeValue = "JA" ;
würde gehen.
viele Grüße
Axel