Hund: DOM - document.getElementsByName()

Beitrag lesen

Hallo Thomas,

herzlichen Dank für die ausführliche Antwort: der springende Punkt ist tatsächlich, dass TD kein NAME-Attribut besitzt ........ :-/

Konstrukten mit
document.getElementsByName() gehe ich dann lieber ganz aus dem Weg - habe mir diese Lösung audgedacht:

Spreche die Tabelle mit

tab = document.getElementById('tabelle'); an und

ermittle mit tab.getElementsByTagName('td') alle Zellen DIESER Tabelle. Die Tabelle darf eben nur nicht zu viele Zellen haben, die
unbehandelt bleiben sollen ....

Mfg Hund

<HTML>
<HEAD>
<STYLE TYPE="text/css">
<!--

.zelle
{
background-color:white;
border:1px solid black;
}

.zelle1
{
background-color:white;
border:1px solid black;
}

.zelle2
{
background-color:red;
border:1px solid black;
}

//-->
</STYLE>

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function farbe(nummer)
{

ebene = document.getElementById('tabelle');
zellen = ebene.getElementsByTagName('td');

for (i = 0; i < zellen.length; i++)
{
zellen[i].className = "zelle1";
if (nummer == i)
zellen[i].className = "zelle2";
}

}
//-->
</SCRIPT>

</HEAD>
<BODY>
<TABLE ID="tabelle">
<TR NAME="reihe" ID="reihe" CLASS="reihe">
<TD NAME="zelle" ID="zelle1" CLASS="zelle" onClick="farbe(0)"> </TD>
<TD NAME="zelle" ID="zelle2" CLASS="zelle" onClick="farbe(1)"> </TD>
<TD NAME="zelle" ID="zelle3" CLASS="zelle" onClick="farbe(2)"> </TD>
</TR>
</TABLE>
</BODY>
</HTML>