I have a pretty basic MultiSelect, but the filter textbox (so you can type) does not even render.
@(Html.Kendo().MultiSelectFor(x => x.ParentAction.CustomFields)
.Placeholder("Search...")
.BindTo(Model.ParentAction.CustomFields)
.DataTextField("Name")
.DataValueField("CustomFieldId")
.Filter(FilterType.Contains)
.HtmlAttributes(new { @class = "form-control"})
.Height(325))
I also have a working DropDownList that uses server filtering:
@(Html.Kendo().DropDownListFor(x => x.ParentAction.CampaignId)
.OptionLabel("Select an existing campaign")
.DataSource(s =>
{
s.Custom()
.Type("aspnetmvc-ajax")
.ServerFiltering(true)
.Transport(t => t.Read(r =>
{
r.Action("GetCampaignsByActionType", "Campaign");
})
);
})
.DataTextField("Name")
.DataValueField("CampaignId")
.Enable(false)
.AutoBind(false)
.Filter(FilterType.Contains)
.CascadeFrom("ParentAction_CampaignType")
.Height(325)
.HtmlAttributes(new { @class = "form-control", style = "border:none;" })
.Deferred(!Request.IsAjaxRequest()))
That I converted to a multiselect which still does not render a textbox that I can type in:
@(Html.Kendo().MultiSelectFor(x => x.ParentAction.CampaignId)
//.OptionLabel("Select an existing campaign")
.DataSource(s =>
{
s.Custom()
.Type("aspnetmvc-ajax")
.ServerFiltering(true)
.Transport(t => t.Read(r =>
{
r.Action("GetCampaignsByActionType", "Campaign");
})
);
})
.DataTextField("Name")
.DataValueField("CampaignId")
.Enable(false)
.AutoBind(false)
.Filter(FilterType.Contains)
//.CascadeFrom("ParentAction_CampaignType")
.Height(325)
.HtmlAttributes(new { @class = "form-control", style = "border:none;" })
.Deferred(!Request.IsAjaxRequest()))
I cannot seem to find anything on this specific behavior when searching the web. So what am I doing incorrectly?