Pending Review
Last Updated: 17 Sep 2025 19:54 by Karen
Karen
Created on: 17 Sep 2025 19:54
Category: Kendo UI for jQuery
Type: Bug Report
0
In a grid save event, when using model.set() for a column mapped to a complex object, the UI does not refresh

We have a column in our grid bound to a complex JSON object. When a different column's value is changed, we need to change the nested properties in the complex JSON object.

To do this, in the grid's Save event, we are calling model.set("theComplexObject.NestedProperty", newValue). However, doing this does not automatically update the UI for that row's cell. Furthermore, it never seems to mark the column dirty. Manually calling grid.refresh() will fix the issue, but the grid we are working on has a lot of columns and it adds a performance hit.

This approach works for all of our other columns that do NOT use complex objects. They correctly show the dirty flag and new model value after the save operation completes.

Below is a Dojo example with the save event wired up and a complex name column. It's worth mentioning that the dirty flag also doesn't appear to be working on the eye color column. This may be another bug introduced in a newer version of Kendo.

https://dojo.telerik.com/ZHkxwJee

  • Change the age for a column and click off the cell. The eyeColor updates, but the name does not. The dirty flag gets put in the first cell for some reason (this happens when updating the second row too... it adds the dirty flag to the first cell in the first row).
  • Enabling the currently commented line that does e.sender.refresh() will fix the display issues, but the dirty flag still doesn't show for the name column.
0 comments