Dynamische Pagination

  • Hallo,


    ich habe eine tabelle, wo ich dynamisch texte einfügen kann.

    Nun möchte ich eine zweite seite hinzufügen sobald ich 5 tabelleneinträge habe.

    somit soll auch ein button mit seite 2 erscheinen und die ältesten einträge sich in der zweiten seite befinden.


    wie könnte ich das realisieren?


    momentan kann ich dynamisch einträge eintragen. nur weiß ich nicht wie ich die elemente auf seite 2 kriege. desweiteren möchte ich auch zwischen den seiten switchen können.


    hier ein code beispiel:


  • 1. Eine Tabelle mit nur einer Spalte würde wenig Sinn machen, ich vermute, Du hast mehr und es gekürzt, damit der Code nicht zu lang wird?

    2. Du schreibst, Du willst die Elemente auf Seite 2 bekommen. Meinst Du damit wirklich eine zweite HTML-Seite oder dass auf der selben Seite jeweils nur ein Abschnitt sichtbar ist und man diesen mit dem Button auswählen kann (etwa so wie es datatables macht)?

    Wobei ich letzteres empfehlen würde. Und überlegen ob es angebracht ist, Datatables zu verwenden.

  • 1. Eine Tabelle mit nur einer Spalte würde wenig Sinn machen, ich vermute, Du hast mehr und es gekürzt, damit der Code nicht zu lang wird?

    2. Du schreibst, Du willst die Elemente auf Seite 2 bekommen. Meinst Du damit wirklich eine zweite HTML-Seite oder dass auf der selben Seite jeweils nur ein Abschnitt sichtbar ist und man diesen mit dem Button auswählen kann (etwa so wie es datatables macht)?

    Wobei ich letzteres empfehlen würde. Und überlegen ob es angebracht ist, Datatables zu verwenden.

    zu 1: ja genau. ich habe den code abgekürzt

    zu 2: ich möchte auf keinen fall eine zweite html seite. es soll genauso sein wie bei den datatables, wo man mit den buttons hin und her wechselt.

  • Ich würde so vorgehen, dass ich den einzelnen Zeilen in der Tabelle ein Klasse gebe, also "block0" für den ersten Block / die erste Seite, "block1" für die zweite usw. Und für die Anzahl der Zeilen in einem Block ein Konstante, z. B. nrRowsPerBlock = 4. Dann kannst Du den Index für aktuellen Block ermitteln, indem Du die Gesamtzahl durch die Anzahl pro Block teilst: idx = x / nrRowsPerBlock.