Ich habe Probleme während der Client-Seite Filterung auf Kendo Grid. Ich benutze ASP.NET MVC 4.5. Ich möchte auf der Client-Seite filtern (um die Server-Reise zu reduzieren) und Filterung wird nur auf den Rasterdaten passieren.Kendo Grid Custom Client Seite Filterung
Bitte schlagen Sie vor, wie können wir den Datenfilter basierend auf Suchwert im Textfeld eingegeben und klicken Sie auf die Schaltfläche.
Unten ist der Quellcode, den ich für Beispiel-Demo verwende.
@using Kendo.Mvc.UI
@model IEnumerable<DemoApp.Controllers.StudentsGrid>
<link rel="stylesheet" href="~/Scripts/Kendo/Css/kendo.common.css" />
<link rel="stylesheet" href="~/Scripts/Kendo/Css/kendo.default.min.css" />
<input type="button" value="Search" id="btnSearch" />
FirstName
<input id="txtFirstName" />
LastName
<input id="txtLastName" />
@(
Html.Kendo().Grid<DemoApp.Controllers.StudentsGrid>(Model).Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
})
.Filterable()
.DataSource(ds => ds
.Ajax()
.ServerOperation(false)
)
)
<script src="~/Scripts/Kendo/kendo.all.min.js"></script>
<script src="~/Scripts/Kendo/kendo.aspnetmvc.min.js"></script>
<script>
$(function() {
//set culture of the Kendo UI
kendo.culture("en_GB");
$("#btnSearch").click(function() {
grid = $("#grid").data("kendoGrid");
var ds = grid.dataSource;
ds.filter([
{
"field": "FirstName",
"operator": "startswith",
"value": $("#firstName").val()
}
]);
});
});
</script>
Ich bekomme immer "null" Wert von unten Code
grid = $("#grid").data("kendoGrid");
var ds = grid.dataSource;
Grüße