Ergebnis 1 bis 8 von 8

Thema: jQuery TableSearcher

  1. #1

    jQuery TableSearcher

    So, ich bin zwar Mod, hab aber selber nicht so richtig Ahnung wos hingehört, bitte nicht hauen

    Vielleicht kennen einige von euch jQuery, das wunderbare JavaScript Framework. Wer sich damit ein wenig eingehender beschäftigt hat, wird vielleicht sogar das Plugin TableSorter kennen.

    TableSorter sortiert einen Table (welch Wunder) anhand einer im Tableheader angegeben Spalte.
    Nachdem ich mich einige Zeit mit jenem begnügt habe, dachte ich mir: Du durchsuchst dauernd die Tabellen, magst jQuery, findest TableSorter toll, also schreib dein eigenes Plugin.

    Ziemlich schnell habe ich dann das jQuery TableSearcher Plugin entwickelt. Das Prinzip sollte selbsterklärend sein, aber ein wenig zur Vorgensweise des Scriptes:

    1. Die Spalten des Tables werden anhand des <thead>-Tags im Table erkannt. Zugehörig sind dann auch die <th>-Tags darin. Wer jQuery Tablesorter benutzt wird mit Tablesearcher keine Probleme haben.
    2. Es wird ein Button "Searcher hinzufügen" über dem Table erzeugt.
    3. Es wird ein Searcher (der Zusammenschluss eines Textfeldes und einer Select-Box) direkt über dem Button erzeugt, wobei die Select-Box die Spaltennamen des Tables enthält.
    4. Beim Auftreten eines Onchange Events wird der Table durchsucht, und nur die Zeilen, auf die ALLE Searcher zutreffen werden angezeigt.
    5. Beim Klick auf den Button wird ein neuer Searcher erzeugt.

    Die Vorteile liegen ganz klar auf der Hand:

    • Keine zusätzlichen Datenbankabfragen
    • Sortierung + Suche in einem
    • Kein zusätzlicher Query an den Server

    Jedoch, kein Vorteil ohne Nachteil:

    • JavaScript wird unbedingt benötigt
    • Keine Erkennung von Zahlen u.ä.; es wird stur nach Substrings gesucht
    • Nach jetzigem (Wissens-)Stand nur 1 Tablesearcher-Table pro Seite möglich
    • Tabellenspaltennamen dürfen nicht doppelt vorkommen

    Den zweiten Nachteil versuche ich bereits auszumerzen, ich weiß jedoch nicht, ob ich die Zeit und Lust dazu finde, diese Arbeit zu beenden.

    Die Verwendung des Plugins ist ziemlich einfach:
    Code:
    jQuery('#meintable').tablesearcher();
    Das wars bereits. Mit diesem Befehl wird der Tablesearcher mit Standardparametern erzeugt. Auf zusätzliche Parameter gehe ich in diesem Entwicklungsstadium noch nicht ein, da ich wohlmöglich noch einige hinzufügen werde.

    Nun zu meiner eigentlichen Frage:
    Wer würde sich für ein entsprechendes Addon fürs VMS davon interessieren?
    Ich denke da zum Beispiel an Buchungslisten u.ä., bei der man die DB einmal mit meinetwegen 1000 Zeilen belastet und alle anderen Suchen nur über Tablesearcher macht.

    Also, nochmal für alle die das bisherige nur überflogen haben:
    Plugin verallgemeinern und dann der breiten Öffentlichkeit zur Verfügung stellen, oder besteht gar kein Interesse?

    Demo: http://snippets.ad-revolution.com/

    Mfg
    Sebmaster


  2. #2
    Erfahrener Benutzer Avatar von Hardy
    Registriert seit
    24.01.2007
    Beiträge
    2.235
    Zitat Zitat von Sebmaster Beitrag anzeigen
    Nun zu meiner eigentlichen Frage:
    Wer würde sich für ein entsprechendes Addon fürs VMS davon interessieren?
    Ich denke da zum Beispiel an Buchungslisten u.ä., bei der man die DB einmal mit meinetwegen 1000 Zeilen belastet und alle anderen Suchen nur über Tablesearcher macht.
    Wenn ich das richtig verstanden habe und du ein addon für die buchungsliste machen möchtest und die buchungsliste dann wesentlich schneller geladen wird habe ich auf jedenfall interesse.

    Du glaubst garnicht wie lange manchmal meine gamebuchungsliste im Adminforce lädt
    Ich nutze den Firefox nur um Opera Google Chrome runterzuladen

  3. #3
    Zitat Zitat von hardliner Beitrag anzeigen
    Wenn ich das richtig verstanden habe und du ein addon für die buchungsliste machen möchtest und die buchungsliste dann wesentlich schneller geladen wird habe ich auf jedenfall interesse.
    Die Buchungsliste wird dadurch nur bedingt schneller. Zum einen muss die Datenbank nicht mehr sortieren (Tablesorter), zum anderen braucht man z.B. keine WHERE Klauseln mehr (ausser diese sind "etwas" komplexer) (Tablesearcher).

    Eigentlich zielt das Addon darauf ab, die Buchungsliste nur einmal komplett auszugeben, aber dannach keinen Refresh mehr zu haben, wenn man z.B. nur die Einträge eines bestimmten Tages haben will, oder eines bestimmten Tages UND eines bestimmten Users etc.


  4. #4
    Gut, ich bin mal so frei, und mach trotzdem einen Doppelpost, weil ich ein ganz pöser Mod bin

    Ich darf ganz stolz verkünden: Es ist Fertig!!!

    Im Moment kann es ganz normal alphabetisch und numerisch (deutsches Nummernformat mit 10.000,00 oder 10000 oder 10.000) suchen, aber zusätzlich lässt sich noch jeder beliebige eigene Parser integrieren.

    Wer sich bei mir meldet, kann durchaus dieses Plugin/Addon haben

    Mfg
    Sebmaster


  5. #5
    Erfahrener Benutzer Avatar von bulli
    Registriert seit
    06.01.2007
    Beiträge
    234
    Super Sachen , das freut mich, dann meld ich mich mal bei dir.

  6. #6
    Administrator Avatar von Lokutos
    Registriert seit
    29.03.2008
    Beiträge
    3.147



    MFG Lokutos
    SwissNetWorX - VMS Hosting / V-Server / Cloud-Server / Hosting

  7. #7
    Erfahrener Benutzer Avatar von Hardy
    Registriert seit
    24.01.2007
    Beiträge
    2.235
    auch haben will (bitte)
    Ich nutze den Firefox nur um Opera Google Chrome runterzuladen

  8. #8
    Demo siehe oben, Dokumentation mach ich noch fertig.
    Ich überleg zudem noch, die Möglichkeit zu geben, eigene Funktionen z.B. nach Abschliessen einer Suche, nach dem Fehlschlag/Erfolg eines Searchers etc.

    Ich würde vorschlagen, persönlich mit jedem einzelnen zu quatschen, ggf. Tipps beim Einbau zu geben und die Funktionen zu erklären, deswegen bitte ich euch, euch entweder per ICQ oder Skype bei mir zu melden

    Mfg
    Sebmaster

    P.S.: Demo oben eingefügt (enthält Tablesorter+Tablesearcher).


Ähnliche Themen

  1. [HTML/CSS/JS] jquery probleme
    Von sterni im Forum [HD] Programmieren
    Antworten: 2
    Letzter Beitrag: 30.10.2016, 21:55
  2. Antworten: 0
    Letzter Beitrag: 14.12.2013, 00:34

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •