Kendo UI Grid-Suche als Typ B.
Möchte ich Suche datagrid in Kendo UI während der Eingabe ins input-Feld über das Netz.
Wie kann ich es tun?
Vielen Dank für jeden Rat.
Hier ist zum Beispiel Spalten:
$("#grid").kendoGrid({
dataSource: dataPacket,
filterable: true,
pageSize: 10,
pageable: true,
sortable: true,
reorderable: true,
resizable: true,
columnMenu: true,
height: 550,
toolbar: ["create", "save", "cancel"],
columns: ["id",
"username",
"name",
"surname",
"email",
{
field :"created",
title : "Created at",
format: "{0:M/d/yyyy}",
parseFormats: ["dd-MM-yyyy"],
type: "date"
},
- Wir brauchen mehr hintergrund-Informationen. Spalten und Felder mindestens, und DataSource-Konfiguration nützlich sein könnten.
- Ich möchte die Suche in den ganzen Datensatz ausgefüllt von API im lese-Ereignis.
- Wenn du mir mindestens die Spalten kann ich Ihnen ein Beispiel geben. Ansonsten gebe ich dir nur pseudo-code. Was tun Sie lieber?
- Ich habe einige Beispiel-Frage
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kendo machen diese Sache wirklich einfach für Sie, was nötig ist, um einen filter zu erstellen und übergeben es an die Datenquelle.
http://docs.telerik.com/kendo-ui/api/framework/datasource#methods-filter
Jedoch, dieses problem muß geteilt werden in zwei unterschiedliche Aufgaben:
a) Erfassen der wichtigsten Ereignisse in das Suchfeld ein, Gas Sie es und starten Sie die Suche nach der "operation".
b) Bauen Sie einen filter ein und übergeben es an die DataSource.
Also für die Drosselung der Tastatur-Ereignisse, wir brauchen einen timeout. Oder verwenden Sie die Drossel-Funktion von underscorejs. Warum? Wir wollen nicht der Auslöser einer search-operation auf jede Taste zu drücken. Nur 250 Millisekunden (dieser Wert ist bis zu Ihnen) nach dem letzten Tastendruck.
Hier ist Ihr Beispiel-HTML
Hier ist das Beispielskript. Ich wickle alles als eine sich selbst aufrufende Funktion, wie Sie nicht wollen, erstellen Sie ein Chaos Globale Variablen zu deklarieren.
Bottom-line: Stellen Sie sicher, dass Sie die richtige DataSource-Konfiguration.
Wenn Sie konfiguriert serverFiltering = true, diese Filterlogik wird ein Teil Ihrer Ajax-request, so wird Ihr server zu deuten und führen Sie die Filterung auf server-Seite.
In Fall, dass Sie konfiguriert serverFiltering = false alle diese Filter-Logik ausgewertet werden, auf der client-Seite mit JavaScript (verdammt schnell!). Und in diesem Fall, die schema (was Daten-Typ erwartet wird, in jeder Spalte) muss auch gut konfiguriert.