title: Filtering in Telerik Kendo Multiselect
body: <p>Hi I have a simple select in my mvc view....</p>
  
  <pre><code>&lt;select id="msProducts" multiple style="width:100%;"&gt;&lt;/select&gt;
  </code></pre>
  
  <p>which is converted to a Kendo Multiselect using Javascript/JQuery</p>
  
  <pre><code>$(document).ready(function () {
  
          //products multi-select
          $("#msProducts").kendoMultiSelect({
              placeholder: "Select Product(s)",
              dataTextField: "ProductNameText",
              dataValueField: "ProductNameValue",
              dataSource: {
                  type: "json",
                  serverFiltering: true,
                  transport: {
                      read: {
                          url: "Home/Products"
                      }
                  }
              }
          });
  
  });
  </code></pre>
  
  <p>My Contoller has:</p>
  
  <pre><code>'GET: Home/Products
  &lt;HttpGet&gt;
  Function Products() As JsonResult
      Dim DiaryProductList As List(Of ProductsModel) = ProductsModel.GetProducts
      Return Json(DiaryProductList , JsonRequestBehavior.AllowGet)
  End Function
  </code></pre>
  
  <p>My ProductsModel Class is:</p>
  
  <pre><code>Public Class ProductsModel
  
      Public Property ProductNameText As String
  
      Public Property ProductNameValue As String
  
      Public Shared Function GetProducts() As List(Of ProductsModel)
          Dim ProductList = New List(Of ProductsModel)
          Dim dc As New DBDataContext
          Try
              Dim ProductsQuery = (From pIn dc.Products
                                  Where p.ProductStatus &lt;&gt; "discontinued"
                                  Select New With {.ProductNameValue = p.ProductName,
                                      .ProductNameText = p.ProductName}).OrderBy(Function(lst) lst.ProductNameValue)
              For Each r In ProductsQuery
                  ProductList.Add(New ProductsModel() With {.ProductNameValue = r.ProductNameValue,
                                    .ProductNameText = r.ProductNameText})
                  Next
  
             Catch ex As Exception
                  ProductList.Add(New ProductsModel() With {.ProductNameValue = "",
                                    .ProductNameText = ex.Message})
              Finally
                  dc.Connection.Close()
              End Try
              Return ProductList
      End Function
  End Class
  </code></pre>
  
  <p>My problem is that although the muti-select gets populated (with some 5000+ products) the dropdown is not filtering as a user types. For example if I beging typing the word CAKE. As soon as I type C the I-beam disappears and after a second or two the dropdown drops for a brief moment and then disappears clearing the multi-select completely. The only way I can populate at the moment is type the letter A, wait and then scroll through the complete list and select what I need, repeating for each item I need. Have I missed something? Should I introduce paging in order to limit the data? </p>
  
  <p>Thanks</p>