Yes, we need to define specific filter functions in javascript, as shown below.
.Columns(columns => { columns.Template(@<text>@item.FirstName @item.LastName</text>) .ClientTemplate("#=FirstName# #=LastName#") .Title("Name"); columns.Bound(e => e.City) .Filterable(filterable => filterable.UI("cityFilter")) .Width(200); columns.Bound(e => e.Title) .Filterable(filterable => filterable.UI("titleFilter")) .Width(350); }) .Filterable(filterable => filterable .Extra(false) .Operators(operators => operators .ForString(str => str.Clear() .StartsWith("Starts with") .IsEqualTo("Is equal to") .IsNotEqualTo("Is not equal to") )) ) .DataSource(dataSource => dataSource .Ajax() .Read(read => read.Action("FilterMenuCustomization_Read", "Grid")) ) ) <script type="text/javascript"> function cityFilter(element) { element.kendoDropDownList({ dataSource: { transport: { read: "@Url.Action("FilterMenuCustomization_Cities")" } }, optionLabel: "--Select Value--" }); } function titleFilter(element) { element.kendoAutoComplete({ dataSource: { transport: { read: "@Url.Action("FilterMenuCustomization_Titles")" } } }); } </script>
see this
http://demos.telerik.com/aspnet-mvc/grid/filter-menu-customization
source share