Hallo ich habe ein Problem mit dem Anzeigen/Verbergen von Layern in einer dynamisch erzeugten Tabelle. Wer mir zu einer Lösung verhilft, bekommt einen Kasten Bier spendiert:-)
---> Also zunächst habe ich ein Script, in dem ich den Layer innerhalb der Funktion abfrage() definiere + 2 Funktionen (zeigen + verstecken)
<SCRIPT LANGUAGE="JavaScript">
var lay2;
function abfrage ()
{
var version=navigator.appVersion.charAt(0);
if (navigator.appName=='Microsoft Internet Explorer' && parseInt(version)>='4')
{
lay2=document.getElementById("Prom\_name[i]").style;
}
}
function Info_verstecken (peElementByID)
{
// Über diese Funktion wird der Layer ausgeblendet
lay2.visibility="hidden";
}
function Info_zeigen (peElementByID)
{
// Über diese Funktion wird der Layer eingeblendet
lay2.visibility="visible";
}
</SCRIPT>
---> im Body wird zunächst abfrage geladen u. dadurch habe ich dann auch die Definition des Layers
<BODY onload="abfrage()">
---> Dann habe ich eine Tabelle deren Inhalt dynamisch erzeugt wird, d.h. ich weiss also noch nicht wie viele Zeilen ich mal bekomme. Das erste Feld jedes Datensatzes
Prom_nr[i] wird als Link dargestellt u. mit mouseover/mouseout die Funktionen (zeigen+verstecken) angesteuert.
<TABLE border=0 cellspacing=1 cellpadding=2>
<tr>
<td >
PROM-NR
</td>
<td >
PROM-NAME
</td>
<td class=listheader>
PROM-NAME
</td>
repeat with i from 1 to Prom\_nr.dim
<tr >
<td>
<A HRE=LINK" onmouseover="Info_zeigen()" onmouseout="Info_verstecken()"> Prom\_nr[i]</A>
</td>
<td>
<DIV ID="Prom\_name[i]" STYLE="visibility:hidden">
Prom\_nr[i] </DIV>
</td>
<td>
Prom\_name[i]
</td>
</tr>
end
</table>
Beim Script wie oben abgebildet passiert folgendes (siehe Tabelle A). Egal ob ich nun mit der Mouse mich auf 12, 34 oder 78 befinde, ich erhalte stets in der zweiten Spalte XYZ
Beispieltabelle A
PROM-NR PROM-NAME PROM-NAME
12 XYZ XYZ
34 ABC
78 SDS
Wenn ich innerhalb der Funktion abfrage() folgendes als Index eingebe
lay2=document.getElementById("Prom\_name[3]").style;
dann wird egal ob ich mit der Mouse mich auf 12, 34 oder 78 befinde stets der dritte Name angezeigt (siehe Tabelle B)
Beispieltabelle B
PROM-NR PROM-NAME PROM-NAME
12 XYZ
34 ABC
78 SDS SDS
So und was ich aber haben will, ist der Fall, dass wenn ich mit der Mouse auf der 34 bin (das entspricht Prom_nr[2]) ich dann auch Prom_name[2] (ABC) angezeigt bekomme,....und bei Prom_nr[1]) den Prom_name[1] (XYZ).... und bei Prom_nr[3]) den Prom_name[3] (SDS)
Beispieltabelle C
PROM-NR PROM-NAME PROM-NAME
12 XYZ XYZ
34 ABC ABC
78 SDS SDS
Ich bedanke mich schon mal im voraus, viele Grüße
Andreas