I have this combobox. As expected the select event fires when I select an item (plus the change event) but does not fire when I clear (X) the selection. The change event fires when I clear but then I don't know how to evaluate that nothing is selected. How do I evaluate if the selection was cleared?
In my script for the change event, I get the first alert. But, then the "if (e.item)" always falls to the else logic.
@(Html.Kendo().ComboBox()
.Name("isActiveFilter")
.Filter(FilterType.Contains)
.Placeholder("No filter...")
.DataTextField("Name")
.DataValueField("Value")
.BindTo(Model.IsActiveOptions)
.Suggest(true)
.Events(e =>
{
e.Select("onActiveFilterSelected");
e.Change("onActiveFilterChanged");
})
.HtmlAttributes(new { style = "width:100%;" }))
Here are my event handlers:
function onActiveFilterChanged(e) {
alert("change");
if (e.item) {
var dataItem = this.dataItem(e.item.index());
alert("event :: change (" + dataItem.Name + " : " + dataItem.Value + ")");
} else {
alert("event :: change");
}
}
function onActiveFilterSelected(e) {
alert("select");
if (e.item) {
var dataItem = this.dataItem(e.item.index());
alert("event :: select (" + dataItem.Name + " : " + dataItem.Value + ")");
} else {
alert("event :: select");
}
}