Get a scenario where we have a Grid with the following configs:
Having the above configuration, try to reorder random rows. The value in the Drag Hint shows a number of files that is twice the number of the selected for reordering rows.
The text inside the Drag Hint is "4 items selected"
The text inside the Drag Hint should correspond to the number of the selected rows. In the above scenario, the text should be "2 items selected"
In a Grid with a hidden column, the aggregates in the footer shift to the right if you edit a cell.
Regression introduced with 2023.2.829
The footer cells shift to the right.
The footer cells shouldn't shift to the right after updating a cell.
Bug report
Row filter Clear icon does not clear the autocomplete in Grid since 2022.1.119
Reproduction of the problem
Open the demo: https://demos.telerik.com/kendo-ui/grid/filter-row
Expected/desired behavior
AutoComplete shall be cleared
The issue is introduced with 2022 R1 (2022.1.119)
Environment
Kendo UI version: 2022.1.119 or above
Browser: [all]
We are using the columns.filterable.ui to initialize a kendoTextArea, if we write something and use the enter key to filter the value is ignored.
Example:
Hello,
we have the following problem:
In the dojo https://dojo.telerik.com/uJUGEQuh clicking on a row from the skleton loader in the grid causes an error. It seems like you want to access the "id" field from the datasrouce model which doesn't exist in the loading animation.
model:
{
id: "Id",
fields:
{
ProductName: { type: "string" },
Id: { type: "number" }
}
}
If you rename the "id" field to for exmaple "XXXX" the error message changes
from:
Uncaught TypeError: Cannot read properties of undefined (reading 'Id')
to:
Uncaught TypeError: Cannot read properties of undefined (reading 'XXXX')
We attached a gif of the problem and the code snipped of the dojo. The browser is Chrome Version 109.0.5414.120 (Official Build) (64-Bit)
Greetings
Ingo E.
When the value of a cell in the Grid is set using the model.set method, and there is already a dirty cell in the Grid, the .k-dirty-cell
class is added to multiple cells.
setValue
button (The set value button is setting the value of the third cell in the ProductName column using the API set method)The k-dirty-cell
class is applied to multiple cells (the background is changed to green).
The .k-dirty-cell
class should be applied only to the cells with changed value.
When filtering is enabled in the Grid, the autoFitColumns method does not work.
The filterable Grid's columns are not auto-fitted
The filterable Grid's columns should be auto-fitted
I am trying to change the menu option for a column from false to true and others from true to false when a user selects an item from a dropdown. This isn't working. I'm using getOptions(), changing the menu setting in each column, and then setOptions(options) to set it.
Here is a dojo showing an example. In the example, firstName and lastName are initially hidden. I simulate a user choosing last name from some sort of selector (like a dropdown box). The code should then hide both name columns and unhide the lastName column. Instead it hides both name columns.
It seems to have something to do with setting any of the name columns to hidden on initialization. If I remove this from the column settings on initialization though it only works once and when I choose a different option from the dropdown (dropdown is simulated in the dojo so you can't try this but trust me) it breaks.
<html> <head> <meta charset="utf-8"> <title>Untitled</title> <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2022.1.412/styles/kendo.common.min.css"> <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2022.1.412/styles/kendo.rtl.min.css"> <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2022.1.412/styles/kendo.default.min.css"> <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2021.2.511/styles/kendo.mobile.all.min.css"> <script src="https://code.jquery.com/jquery-1.12.3.min.js"></script> <script src="https://kendo.cdn.telerik.com/2021.2.511/js/angular.min.js"></script> <script src="https://kendo.cdn.telerik.com/2021.2.511/js/jszip.min.js"></script> <script src="https://kendo.cdn.telerik.com/2021.2.511/js/kendo.all.min.js"></script></head> <body> <div id="myGrid"></div> <script> let tableRows = [ { ID: 1, FirstName: "John", LastName: "Smith", Age: 21 }, { ID: 2, FirstName: "Jenny", LastName: "Jones", Age: 18 }, { ID: 3, FirstName: "Greg", LastName: "Adams", Age: 23 } ]; let tableColumns = [ { title: "Employee ID", field: "ID", width: 100, locked: true, menu: false }, { title: "First Name", field: "FirstName", width: 150, hidden: true, attributes: { "class": "name" }, }, { title: "Last Name", field: "LastName", hidden: true, width: 150, attributes: { "class": "name", "data-position": "last name" }, }, { title: "Age", field: "Age", width: 100 } ]; var grid = $(`#myGrid`).kendoGrid({ dataSource: { data: tableRows, schema: { model: { id: "ID", fields: { ID: {type: "number"}} } } }, dataBound: function (e) { if (e.sender.dataSource.view().length == 0) { var colspan = e.sender.thead.find("th").length; //insert empty row with colspan equal to the table header th count var emptyRow = "<tr><td colspan='" + colspan + "'></td></tr>"; e.sender.tbody.html(emptyRow); e.sender.table.width(800); } }, columns: tableColumns, columnMenu: true, sortable: true, pageable: false }).data("kendoGrid"); let options = grid.getOptions(); let columns = grid.columns; let nameColumns = $(".name"); let lastNameColumn = $("[data-position='last name']"); let lockedColumnCount = 0; for (var i = 0; i < columns.length; i++) { if (columns[i].locked) { lockedColumnCount++; } } $.each(nameColumns, function (index, element) { let elementIndex = $(element).index() + lockedColumnCount; //kendoGrids[tableId].showColumn(elementIndex); options.columns[elementIndex].menu = false; options.columns[elementIndex].hidden = true; }); // Let's pretend Last Name was chosen from a select box part of name to show. $.each(lastNameColumn, function (index, element) { let elementIndex = $(element).index() + lockedColumnCount; options.columns[elementIndex].menu = true; options.columns[elementIndex].hidden = false; //kendoGrids[tableId].showColumn(elementIndex); }); console.log(options); grid.options = options; grid.setOptions(options); </script> </body> </html>
With the introduction of the Columns tools in the Grid toolbar, if the columnMenu is set to tabbed, the menu is missing the Column Visibility and Autosize options.
Regression introduced with 2024.1.130
The Column Visibility and Autosize options are missing
The Column Visibility and Autosize options should be visible.
When using a ForeignKeyColumn that is bound to a dataSource, the Grid options will not be available initially such as during the document.ready event.
Please visit this Progress Kendo UI Dojo which demonstrates the Grid unable to retrieve the options, and receiving a JavaScript error.
The Grid options should be available upon the document.ready event with a databound ForeignKeyColumn.
Bug report
Sticky Column misalign on scroll with Safari IOS in Desktop Mode
Reproduction of the problem
Open: https://demos.telerik.com/kendo-ui/grid/sticky-columns
Make sure to "Request Desktop Website" with Safari (it works fine in Mobile Mode)
Then try scrolling vertically in the grid particularly first dragging the frozen columns and then dragging the non-frozen columns
Environment
Kendo UI version: 2022.3.1109
jQuery version: All Supported Versions
Browser: Firefox 108.0
Bug report
Reproduction of the problem
Open: https://demos.telerik.com/kendo-ui/grid/frozen-columns
Make sure to "Request Desktop Website" with Safari (it works fine in Mobile Mode)
Then try scrolling vertically in the grid particularly first dragging the frozen columns and then dragging the non-frozen columns
Environment
Kendo UI version: 2022.3.1109
jQuery version: All Supported Versions
Browser: Firefox 108.0
Bug report
Using groupHeaderColumnTemplate in Group Paging causes group rows to render without a group-data-uid attribute
Reproduction of the problem
Dojo example: https://dojo.telerik.com/AzecInaY
Inspect grouping row element
Expected/desired behavior
The group-data-uid attribute shall be present
Environment
Kendo UI version: [all]
jQuery version: x.y
Browser: [all]
When all columns have set width in pixels resizing of the columns does not work as expected and the cursor is not aligned with the columns.
The column becomes much wider and the cursor is not aligned with the column border - screencast - https://somup.com/c0lqlFkjLc
The column should be resized along with the movement of the cursor.
Note: The issue starts to appear with Kendo version 2023 R2 SP1 (2023.2.718). Before this version the issue was reproducible only when the pixels are mentioned in the width setting - example: { field: "name", width: "20px" }, - Dojo - https://dojo.telerik.com/@NeliKondova/IdEsagig
An error is thrown in the browser console when you navigate to the last Grid page when grouping is enabled.
Regression with 2022.1.301
An error is thrown on the browser console.
No errors should be thrown in the browser console
Hi,
I've found a bug in the jQuery template code for Kendo Grids. Seems that it directly injects the name of a field from the data source results under the assumption that the field name is a valid JavaScript identifier (i.e. data.someIdenifier). But when the data source results contain a field name that is a number (as in my case), this results in invalid JavaScript (i.e. data.1234) and causes the Kendo Grid code to error. I notice that in some places in the template code, indexing is used instead of member access (data['someIdentifier'] instead of data.someIdentifier), but not everywhere. I'd recommend using indexing every where to fix this (i.e. data[1234]).
The behavior has been introduced in R3 2020.
Dojo example.
The sticky column's left border is not displayed.
The sticky column's left border is displayed.
Dojo example.
Responsiveness of the pager of a Grid declared outside the Window is affected by the Window's destroy method.
Calling the destroy method has no unexpected effect on components that are not nested in the Window.
When a column is unsticked either through the built-in context menu or through the unstickColumn method all the casses from the cells in that column are removed, even the 'k-table-td' class.
All classes in that column are removed
<td class="" style="" role="gridcell">Boulevard Tirou, 255</td>
Note: Initially the cells have the k-table-td class twice which is also not expected
<td class="k-grid-content-sticky k-table-td k-table-td" style="left: 0px; right: 0px;" role="gridcell">Boulevard Tirou, 255</td>
Only the 'k-grid-content-sticky' class should be added or removed when sticking/unsticking a column.
Bug report
Аggregates not working in group footer, when string value contains line break "\n"
Reproduction of the problem
Dojo: https://dojo.telerik.com/uPuyEcEJ
Current behavior
Аggregates not working
Expected/desired behavior
Aggregated should be working fine when the value contains "\n"
Environment
Kendo UI version: [all]
Browser: [all]