2016-09-13 7 views
0

Ich fange an, datatables.net jQuery-Bibliothek und seine Suchmethode zu verwenden. Allerdings habe ich zur Zeit folgendes Problem:Datatables - Suche; aber filtern Sie nicht sofort die Datentabelle

Ich würde gerne die Suchfunktion nutzen aber ich möchte nicht die automatische Filterung zur Verfügung haben. Mit anderen Worten, wenn ich nach einem Begriff suche, möchte ich alle Daten in der Tabelle behalten. Standardmäßig funktioniert die Suche als Filter (Instant-Suche). Dies bedeutet, dass die Datentabelle beim Auftasten schrumpft, wenn der Begriff nicht gefunden wurde, und nur die Zeilen angezeigt werden, die den Begriff enthalten. Das ist nicht was ich brauche. Hat jemand dieses Problem schon einmal erlebt und hat eine Lösung dafür?

Leider habe ich auf der Website von datatables.net nichts gefunden.

Danke!

+0

Ok verwenden. Was wollen Sie dann tun? Sie sagen uns nicht, was Sie erreichen wollen. Möchten Sie die Filterung der Zeilen verzögern? Oder so? – Starx

+0

Bitte beachten Sie den Kommentar unter @markpsmith Post. Vielen Dank. – clde

+0

[This] (https://datatables.net/blog/2014-10-22) könnte hilfreich sein. – Starx

Antwort

0

Sie haben nicht gesagt, wie Sie die Suche durchführen möchten, also nehme ich an, dass es auf der Return-Taste ist.

Zuerst müssen Sie den Standard ‚keyup‘ Ereignis aus der Sucheingabe entbinden:

$("div.dataTables_filter input").unbind(); 

Dann ein neues Ereignis binden, das prüft, ob die Return-Taste gedrückt wurde, führen Sie dann die Suche:

$("div.dataTables_filter input").keyup(function (e) { 
     if (e.keyCode == 13) { 
      oTable.fnFilter(this.value); 
     } 
    }); 

Wo oTable ist Ihr datatable Objekt

Sie haben nicht gesagt, welche Version von Datatables Sie verwenden, Dies ist die v1.9-Syntax. Um es zu v1.10 zu ändern, müssen Sie oTable.search(this.value)

+0

Entschuldigung, mein Ziel ist eine Suche, die nur den gesuchten Begriff in der Tabelle hervorhebt. Im Moment (standardmäßig) funktioniert die Suche wie ein Filter, da die Tabelle durch den gesuchten Begriff minimiert wird. Alle Daten, die nicht mit dem Suchbegriff übereinstimmen, werden nicht angezeigt. Ich möchte jedoch die gesamte Tabelle behalten. Wenn also die Eingabetaste gedrückt wird, wird der gesuchte Ausdruck in der Tabelle hervorgehoben, aber die Tabelle hat immer noch alle Werte. Ich hoffe, das macht es klarer ?! – clde

Verwandte Themen