2016-07-26 9 views
0

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

Antwort

0

Vielen Dank allen.

Ich könnte es schaffen, das Problem zu identifizieren. Es war albern, ich hatte den Gitternamen von #Grid zu #Grid

vertippt