2009-06-06 19 views
2

Ich habe gerade einen Blick auf jqgrid. Hat jemand versucht, dieses Plug-in zu implementieren oder jQuery zu verwenden, um eine serverseitige Paginierung zu erreichen?Server Seite paging mit jQgrid

Ich verwende Struts2 und füllen eine HTML-Tabelle mit einer Liste von der DB zurückgegeben. Diese Liste wird von einem Oracle SP zurückgegeben. Der SP nimmt zusammen mit einigen anderen Parametern "Start" und "Beginn" auf. So kann ich Zahlen an diese Parameter übergeben, um bestimmte Zeilenzahlen zu erhalten.

Wie würden Sie das erreichen? Ich würde eine 'Ajaxy'-Lösung bevorzugen, bei der die ganze Seite nicht aktualisiert wird, sondern nur der Tabellenabschnitt aktualisiert wird. Ich sehe, dass dies auch auf SO gemacht wird, aber ich denke in diesem Fall bringen sie alle Daten auf einmal zurück.

Antwort

3

Ich habe erfolgreich http://www.datatables.net/ verwendet - ein jQuery-Plugin, das serverseitige Daten und Paginierung durchführt.

Hier ist eine grundlegende Implementierung von Datentabellen (Version 1.5 Beta 3), die serverseitigen Paging verwendet: http://artlung.com/temp/comics/.

+0

Ich sehe keine Unterstützung für serverseitige Paginierung. irgendwelche Hinweise, die Sie haben? – Omnipresent

+0

Die aktuelle Version ist 1.4.3. Der Server Side-Support ist in 1.5 beta 3 allein. http://datatables.net/forums/comments.php?DiscussionID=53 - Es tut mir leid für die Unklarheit. – artlung

+0

Ich habe einen Link zu einer grundlegenden Implementierung von Datatables in meiner Antwort hinzugefügt: http://artlung.com/temp/comics/ – artlung

1

Die meisten JavaScript-Raster gehen davon aus, dass Sie alle Daten bereit für die Anzeige haben werden, um damit zu beginnen - vor allem, weil sie clientseitige Sortierung durchführen.

Da Sie auf der Serverseite Paging durchführen möchten, wird das nicht funktionieren.

Mein Vorschlag, definieren Sie einen guten Web-Service und tun Sie es selbst. Sie können JTemplate verwenden, um die Tabelle nach jeder Web-Service-Anforderung zu erstellen. Wenn Sie es einfach halten wollen, sortieren Sie nicht.