Regression introduced in R2 2020. Possibly related to #5467
<input id="orders" style="width: 100%" />
<script>
$(document).ready(function() {
$("#orders").kendoComboBox({
dataTextField: "ProductName",
dataValueField: "ProductID",
virtual: {
itemHeight: 26,
valueMapper: function(options) {
$.ajax({
url: "Home/Orders_ValueMapper",
type: "GET",
dataType: "json",
data: convertValues(options.value),
success: function (data) {
options.success(data);
}
})
}
},
height: 520,
dataSource: {
transport: {
read: {
url: "Home/Virtualization_Read",
dataType: "json"
}
},
schema: {
model: {
fields: {
ProductID: { type: "number" },
ProductName: { type: "string" },
}
},
data: "Data",
total: "Total"
},
pageSize: 80,
serverPaging: true,
serverFiltering: true
}
});
});
function convertValues(value) {
var data = {};
value = $.isArray(value) ? value : [value];
for (var idx = 0; idx < value.length; idx++) {
data["values[" + idx + "]"] = value[idx];
}
return data;
}
</script>
public ActionResult Virtualization_Read([DataSourceRequest] DataSourceRequest request)
{
return Json(GetProducts().ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}
public IEnumerable<Product> GetProducts()
{
var products = Enumerable.Range(0, 0).Select(i => new Product
{
ProductID = i,
ProductName = "ProductName" + i
});
return products;
}
A request to the Read action is sent with the following parameters:
http://localhost:54962/Home/Virtualization_Read?take=0&skip=NaN&page=NaN&pageSize=0&filter%5Blogic%5D=and
The NaN value of the parameters: skip=NaN&page=NaN causes a server error:
Input string was not in a correct format.
...
[Exception: NaN is not a valid value for Int32.]
No exception should be thrown. In versions prior to R2 2020 a request is not sent to the server on pressing Down arrow key.
The ComboBox doesn't reset its default state when removing the selected items with Ctrl+A && pressing the Delete/Backspace button.
This bug is a regression from the 2018 R3 version.
When selecting the first element in the list, the Combobox closes without adding a value to the ComboBox input.
When the "Vins et alcools Chevalier" value is selected , the value should be added in the ComboBox input and the dropdown should close.
Here is a Dojo demonstrating the correct behavior.
The input field of the Combobox is being shifted when a "position: absolute" style is set on its initial element.
The input field of the Combobox is shifted when "position: absolute" style is set on its initial element.
When setting "position: absolute" style on ComboBox initial element the whole component should be shifted according to the set "top, bottom, left, right" parameters.
A possible workaround that could be applied in the above linked Dojo is the following one:
$("#comboboxA").getKendoComboBox().input.css("position", "static");
Here is the modified Dojo with correctly working Combobox with "position: absolute" style is set on its initial element.
ComboBox with filtering option set to "contains".
Search for the last element in ComboBox dropdown and select it. Delete the selected item with mouse selection and "Delete" button. The dropdown will open again. Select the first element in the dropdown. It will close and no data will be selected. If we repeat the scenario and instead of selecting the first element, we select another one, everything is working properly.
This is regression introduced in 2018 R1 SP1
Please check this demo video.
Please check this demo video