Terugkeren naar positie in een tabel

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jaak Francescone

Jaak Francescone

14/05/2020 15:52:53
Quote Anchor link
Hallo,
Ik ben nieuw dus schiet me niet dadelijk af als ik fout doe maar zeg me gewoon wat er fout is.
Ik programmeer wat als hobby en al een hele tijd ben ik opzoek naar het volgend probleem.
Ik heb bv een tabel met 26 rijen waarvan je slechts 10 rijen kunt zien.
vb: rij 1 met data A
rij 2 met data B
rij 3 met data C
rij 10 met data J
nu scrol ik naar beneden naar rij 26 met data Z.
Als ik nu klik op deze rij om gegevens op te halen voor data Z wordt de pagina herladen om de gegevens van Z op te halen maar mijn tabel begint terug van rij 1.
Hier wil ik graag dat deze terug naar regel 26 keert zodat ik niet weer naar beneden moet scrollen.
Alvast bedankt.
 
PHP hulp

PHP hulp

19/04/2024 09:00:39
 
Rob Doemaarwat

Rob Doemaarwat

14/05/2020 16:49:20
Quote Anchor link
Als je elke rij een id meegeeft, dus bijvoorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<table>
  <tr id='rij1'>...</tr>
  <tr id='rij2'>...</tr>
  <tr id='rij3'>...</tr>

Dan kun je vanaf "de andere pagina" naar de juiste rij terugspringen door "#rij{id}" (met {id} = het betreffende ID) achter de link te plaatsen. Dus stel dat je overview.php hebt, en van daaruit ben je naar detail.php?id=26 gesprongen (= vanaf rij 26), dan kun je weer terug naar de juiste plek in het overzicht via:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
header('Location: overview.php#rij26');
 
Thomas van den Heuvel

Thomas van den Heuvel

14/05/2020 17:01:18
Quote Anchor link
Of je kunt de verticale positie van het venster onthouden, en hier naar terugscrollen via JavaScript. Wanneer de pagina snel genoeg herlaad lijkt het net alsof je de pagina nooit verlaten hebt. Bijkomend voordeel is dat deze in het geheel niet "springt" ten opzichte van een variant waarbij je met een specifiek id ergens op de pagina bezig was, die komt dan bovenaan te staan waardoor de pagina waarschijnlijk verschuift als je refresht.
 
Jaak Francescone

Jaak Francescone

15/05/2020 09:05:57
Quote Anchor link
Bedankt mannen. Ik denkt dat het voorbeeld van Thomas toepasselijker is daar ik dezelfde pagina herlaad.

Zou je me hiervan een vb. kunnen geven Thomas?

Alvast bedankt voor de moeite.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/05/2020 11:31:15
Quote Anchor link
Ik kan je het principe uitleggen, maar hoe je dit implementeert hangt van de rest van de functionaliteit af van die pagina, plus mogelijk libraries die je gebruikt.

In mijn geval maak ik gebruik van jQuery, specifiek de functie scrollTop(). Op het moment dat je een klikactie uitvoert voeg je de waarde hiervan toe aan de aangeroepen URL. Op het moment dat je de pagina laadt vis je deze waarde weer uit de URL via PHP, en met deze waarde in PHP initialiseer je JavaScript-functionaliteit om weer terug te scrollen naar de verticale positie.

Wat je natuurlijk ook kunt doen is dat als je naar beneden scrollt dat er op de achtergrond meer items worden ingeladen, in dat geval hoef je de pagina nooit te verversen. Dit vergt wat meer techniek (JavaScript, AJAX-calls en wat PHP-hulpbestanden voor het serveren van de data), maar dan heb je ook wat. In het verleden is zo'n topic al een keer de revue gepasseerd (interne link).
 
Jaak Francescone

Jaak Francescone

15/05/2020 12:22:52
Quote Anchor link
Bedankt Thomas, ik ga eens of ik er iets van bak.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/05/2020 15:38:02
Quote Anchor link
verkeerde topic, mag verwijderd worden. :p
Gewijzigd op 15/05/2020 15:39:22 door Thomas van den Heuvel
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.