Hallo Bernhard,
Wie Du aus dem Code entnehmen kannst, ist oben ein Reihe von Button (ich nenne sie hier r1), die Angaben über die Seitenzahl und Links eine Reihe (ich nenne sie hier r2) von Button, die Anzahl der Punkte auf eine Seite, eine dritte Reihe (ich nenne sie hier r3) ist darunter, die Elementliste.
Wird die Seite aufgerufen bekommt der User die drei "Reihen", oben die Seiten (r1), links die Punkte (r2), in der "mitte" die Elementliste (r3). Nach dem laden der Seit ist "vorgewählt" ist die Seite eins, jetzt muss der User erst ein Punkt (r2) auf der linke Seite wählen, zu jedem Punkt(r2) kann er User ein Element aus der Elementlist (r3) in der "mitte" wählen. Hat der User ein Elelment(r3) gewählt soll die Seitenummer dahinter erscheine.
Nur so aus Neugier: Warum? Die ausgewählte Seite ist doch schon an der Farbe des angeklickten Buttons erkennbar.
Jetzt am konkretem Bsp. Auf der Seite 1 wählt der User in der Linke Buttonreihen(r2) ein Punkt als Bsp.: 3 aus danach wählt er ein Element aus der Elementenliste(r3) aus als Bsp.:8 aus, sobald er darauf auf den achten Element geklickt hat soll die grade ausgewählte Seitennummer dahinter stehen also die 1.
Mein Gedanke war sich alle Punkt aus der Reihe r2 und alle Elementenummern r3 aus der Elementenliste zu sammeln. in einem Array, der sollte ungefähr so aussehen.
seiten[1][3][8]
Sofort nach dem Aufbau sollte dieser Array auch ausgegeben werden.
Fangen wir mal mit dem Array an. Du hast mehrere Seiten, jede Seite hat mehrere Punkte und jeder Punkt mehrere Elemente. Dann brauchst Du dafür z.B. ein dreidimensionales Array, das Du mit PHP füllen kannst (nur ein grober Überblick, da ich kein PHP kann):
<head>
<title>...</title>
<script type="text/javascript">
// Globales Array
var seiten = new Array(<%= seitenzahl %>
<? Schleife über die Seiten, zaehler1 ?>
seiten[<%= zaehler1 %>] = new Array(<%= punktzahl_der_seite %>);
<? Schleife über die Punkte auf der Seite, zaehler2?>
seiten[<%= zaehler1 %>][<%= zaehler2 %>] = new Array(<%= elementzahl_des_punkts %>);
<? Schleife über die Elemente, zaehler3 ?>
seiten[<%= zaehler1 %>][<%= zaehler2 %>][<%= zaehler3 %>] = "<%= elementwert %>";
<? Ende Schleife Elemente ?>
<? Ende Schleife Punkte ?>
<? Ende Schleife Seiten ?>
// An dieser Stelle hast Du das Array komplett mit Seiten, Punkten und Elementen gefüllt.
// Auf ein einzelnes Element greifst Du mit seiten[seite][punkt][element] zu.
// hier kommen dann die Funktionen hin
</script>
</head>
<body>
Und jetzt die Ausgabe:
Die Tabelle mit der Kopzeile (Seiten) und der linken Spalte (Punkte) hast Du ja schon. Alle weiteren Spalten bekommen eine Id für das Element, das sie enthalten: <td="e_<%=punktnummer%>_<%=elementnummer%>">. Diese Tabelle legst Du auch mit PHP an, wobei Du nur Schleifen über die Punkte und Elemente brauchst, aber soviele Zeilen und Spalten anlegen musst wie _maximal_ Punkte/Elemente vorhanden sind. Jetzt kannst Du nach Auswahl einer neuen Seite die Tabelle so neu füllen (Wie Du an die Seitenzahl kommst erkläre ich später):
function fuellen() {
for (var i=0; i<seiten[seite].length; i++) {
for (var j=0; j<seiten[seite][i].length; j++]
document.getElementById("e_" + i + "_" + j).firstChild.nodeValue = seiten[seite][i][j];
}
}
}
Beachte, dass alle Schleifen bei 0 anfangen.
Die entsprechende Tabellenzelle darf nichts anderens enthalten als den Elementtext, damit das so funktioniert. Ausserdem solltest Du die nicht benötigten Zellen vorsichtshalber leermachen, falls sie durch diese Funktion nicht überschrieben werden.
Kommen wir zur Variable "seite". Das ist eine globale Variable, die Du jedesmal änderst, wenn einer der Seiten-Buttons angeklickt wird. Diese Variable kannst Du auch verwenden, um irgendwo anzuzeigen, welche Seite gerade ausgewählt ist.
Ich hoffe Du hast es mich verstanden worum es mir geht.
Das hoffe ich auch.
Grüße
Andreas
Auch eine Reise über tausend Kilometer muß mit einem einzelnen Schritt beginnen.
Laotse "Taoteking"