Blättern einer Tabelle
sunshine
- javascript
Hallo alle zusammen,
vielleicht kann mir einer von euch helfen. Ich lese eine Datenbanktabelle aus und stelle diese als HTML-Tabelle im Web dar.
Jetzt möchte ich nicht 48 Zeilen der HTML-Tabelle untereinander anzeigen und mit dem Scrollbalken scrollen. Ich würde gerne nur 15 Zeilen der Tabelle anzeigen und dann über Blätter-Buttons (Erste Seite, Nächste Seite, Vorige Seite, Letzte Seite) das ganze darstellen.
Hat jemand eine Idee wie ich das am besten in Java Script realisiere oder hat jemand ein Beispiel hierfür?
Vielen Dank im voraus.
Sunshine
Hi,
also JavaScript brauchst du dafür gar nicht. Beim Auslesen aus einer Datenbanktabelle kannst du doch einfach ein Limit angeben. Dieses nimmst du als Variable. Am Anfang ist das dann bei dir halt 15. Den Button zur nächsten Seite verlinkst du dann einfach so, dass die Variable mit dem Limit um 15 erhöht ist usw. (für den Zurückbutton halt umgekehrt).
Gruß
Ben
hi,
Ich lese eine Datenbanktabelle aus und stelle diese als HTML-Tabelle im Web dar.
Jetzt möchte ich nicht 48 Zeilen der HTML-Tabelle untereinander anzeigen und mit dem Scrollbalken scrollen. Ich würde gerne nur 15 Zeilen der Tabelle anzeigen und dann über Blätter-Buttons (Erste Seite, Nächste Seite, Vorige Seite, Letzte Seite) das ganze darstellen.
http://www.dclp-faq.de/q/q-mysql-seitenweise.html bringt dir das konzept nahe.
Hat jemand eine Idee wie ich das am besten in Java Script realisiere
mit javascript: gar nicht.
mache es serverseitig.
gruß,
wahsaga
Hello,
Hat jemand eine Idee wie ich das am besten in Java Script realisiere
mit javascript: gar nicht.
mache es serverseitig.
Wieso so rigoros?
Es kann doch erstens mit DHTML gearbeitet werden
und zweitens könnte man auch alle Daten als Snapshot in einem JavaScript-Array übergeben und dann nur auf dem Client hin und her blättern. Das kommt schließlich auf die Datenmenge und das Einsatzgebiet an. Die üblichen Blättertechniken mittels Offst und Limit sind nämlich i.d.R. alle nur für (vorwiegend) statische Datenbestände geeignet.
Liebe Grüße aus http://www.braunschweig.de
Tom
hi,
Wieso so rigoros?
weil ich die übertragung der kompletten datenmenge zum client, um diesen dann selber das blättern durchführen zu lassen, für unsinnig halte.
bei google schaue ich mir idR. auch maximal zwei ergebnisseiten an - wenn die alle suchergebnisse für http://www.google.de/search?q=selfhtml&ie=ISO-8859-1&hl=de&meta= zuerst auf meinen rechner schieben würden, um mich dann per JS blättern zu lassen, wäre das recht ungünstig (überzogenes extrem-beispiel).
gruß,
wahsaga
Hi,
weil ich die übertragung der kompletten datenmenge zum client, um diesen dann selber das blättern durchführen zu lassen, für unsinnig halte.
Das mag ja sein, aber da hätte ich eine andere Antwort erwartet als "mit javascript: gar nicht." (eher "z.B. mit JavaScript, was ich aber nicht empfehlen kann"). :-o
Eine solche Lösung, insbes. bei kleineren Datenmengen, hat z.B. u.a. den Vorteil, daß Suchmaschinen auf dieser Seite den kompletten Datenbestand indizieren.
Gruß, Cybaer
hi,
Eine solche Lösung, insbes. bei kleineren Datenmengen, hat z.B. u.a. den Vorteil, daß Suchmaschinen auf dieser Seite den kompletten Datenbestand indizieren.
na ja, das kommt dann aber _stark_ darauf an, wie du es mit JS umsetzt.
alle "seiten" schon als divs bereitstellen, zunächst per CSS ausgeblendet, einblendung jeweils dynamisch per JS? -> könnten die SuMas leicht als spamming werten.
ablage der ergebnis in einem JS-array, dessen inhalte dann dynamisch ins dokument geschrieben werden? -> wird der SuMa-Bot gar nichts von mitkriegen.
und ausserdem, was nützt es mir als suchendem, wenn ich die seite von der SuMa als treffer präsentiert bekomme - und mich dann erst mal durch fünf solcher pseudo-unterseiten durchklicken muss, bis ich das gewünschte auch wirklich sehe?
bei serverseitiger aufteilung auf fünf _echte_ unterseiten hätte mich die SuMa direkt zur richtigen seite schicken können, auf der das steht, was ich sehen möchte.
also: ja, man _kann_ es mit javascript machen, wenn man unbedingt möchte (und du gehörst ja zu seinen heftigsten verteidigern hier im forum) - aber sinnvoll ist es nur so wenig, dass ich es nach wie vor nicht für nötig halte, es überhaupt zu erwähnen.
gruß,
wahsaga
Hi,
alle "seiten" schon als divs bereitstellen, zunächst per CSS ausgeblendet, einblendung jeweils dynamisch per JS? -> könnten die SuMas leicht als spamming werten.
Wäre auch eine "unbedachte" Vorgehensweise.
Ich pflege die Daten per JS auszublenden. Nutzern ohne JS/CSS bekommen dann halt keine Interaktivität, sondern alle Daten. Das kann nicht als Spamming angesehen werden.
und ausserdem, was nützt es mir als suchendem, wenn ich die seite von der SuMa als treffer präsentiert bekomme - und mich dann erst mal durch fünf solcher pseudo-unterseiten durchklicken muss, bis ich das gewünschte auch wirklich sehe?
Wie immer eigentlich: Es kommt halt drauf an. =:-))
bei serverseitiger aufteilung auf fünf _echte_ unterseiten hätte mich die SuMa direkt zur richtigen seite schicken können, auf der das steht, was ich sehen möchte.
Schon klar. Aber es kommt IMHO eben nicht nur drauf an (auf die Umstände/Sinn/Nutzen/...), viele Klein-Webmaster haben Server-seitige Techniken nicht unbedingt zur Verfügung (ein Umstand, der hier im Forum anscheinend gerne nicht bedacht wird). Von Online/Offline-Produktionen gar nicht erst zu reden.
also: ja, man _kann_ es mit javascript machen, wenn man unbedingt möchte (und du gehörst ja zu seinen heftigsten verteidigern hier im forum)
Schon, aber der genannte Weg ist halt auch ein echter Zusatznutzen von JS - ohne JS, ist die Site damit trotzdem nicht weniger brauchbar. Und *das* (also Kompatibilität) ist für mich so ziemlich das einzige Kriterium, ob man etwas machen kann/darf oder nicht.
- aber sinnvoll ist es nur so wenig, dass ich es nach wie vor nicht für nötig halte, es überhaupt zu erwähnen.
Da haben wir echte Mentalitätsunterschiede. Ich weiß (hier) zu wenig von den Problemdetails/Aufgabenstellung (und fände es auch etwas anmaßend), um an Stelle des Fragenden für ihn die verschiedenen Möglichkeiten/Techniken zu bewerten. Ich kann sie ihm nur nennen, ggf. mit Vor- & Nachteilen. Entscheiden muß er dann schon selbst ... :-)
Gruß, Cybaer
Hello,
Auf welche Weise liest Du denn die Daten aus der DB aus?
Liebe Grüße aus http://www.braunschweig.de
Tom
Hi,
Hat jemand eine Idee wie ich das am besten in Java Script realisiere oder hat jemand ein Beispiel hierfür?
Mit toggle() (http://Coding.vampirehost.de/Toggle - siehe uch dortige Beispiele) kannst Du beliebige Elementzusammenstellungen z.B. aus-/einblenden.
Einfach die Zeilen markieren (<tr gid="Seite1" ...><tr gid="Seite2" ...>) und über die Markierung einblenden:
toggle("fold","tr","Seite","1",true)
Versteckt alle TRs deren GID-Wert mit "Seite" beginnt. Ausnahmen sind die GIDs mit der angehängten "1" - die werden angezeigt.
Falls Du durch und durch validen HTML-Code bevorzugst (GID ist kein offizielles HTML-Attribut), geht es auch (umständlicher) mit dem ID-Attribut.
Gruß, Cybaer