Unplanned
Last Updated: 21 Oct 2026 07:01 by ADMIN
Lee
Created on: 14 Oct 2026 15:26
Category: Kendo UI for jQuery
Type: Bug Report
2
TreeList with a locked column announces the wrong column header to screen readers

Product: Kendo UI for jQuery — TreeList (also related Grid issues below)
Version: 2026.2.520 (2026 Q2), jQuery 3.5.1
Browser / AT: Google Chrome 155 (Windows 11) with NVDA (latest)
Severity: Accessibility (WCAG 2.2 SC 1.3.1 Info and Relationships)

Summary
In a TreeList that has a locked column, NVDA announces the locked column's header instead of the current column's header when keyboard focus moves to a cell in the scrollable part.

A Grid with the same layout (locked column + scrollable columns + hidden columns) is announced correctly, so the problem seems specific to how the TreeList builds its accessible table (`role="treegrid"` with rows assembled through `aria-owns`).

Here is a Dojo showing the issue: https://dojo.telerik.com/QYJCWJUj

Steps to reproduce
1. Create a TreeList with `navigatable: true`, one or more locked columns (including a hidden locked column) and several unlocked columns (sample here).
2. Open it in Chrome with NVDA running.
3. Click a cell in the first unlocked column ("April"), or Tab into the TreeList and use the arrow keys to reach it.

Expected
NVDA announces the cell, its row and its own column header, e.g.:
`0 / 8, row 2, April, column 2`

Actual
NVDA announces the locked column's header and wrong column number:
`0 / 8  April  row 2  Hierarchy  column 4`

Sample
<div id="treelist"></div>
<script>
  $("#treelist").kendoTreeList({
    navigatable: true,
    height: 300,
    dataSource: {
      data: [
        { id: 1, parentId: null, name: "Region A", apr: "0 / 8", may: "1 / 8", jun: "2 / 8", jul: "3 / 8" },
        { id: 2, parentId: 1, name: "Store 1", apr: "0 / 2", may: "1 / 2", jun: "2 / 2", jul: "2 / 2" }
      ],
      schema: { model: { id: "id", parentId: "parentId", expanded: true } }
    },
    columns: [
      { field: "id", title: "Id", hidden: true, locked: true, width: 80 },
      { field: "name", title: "Hierarchy", locked: true, width: 220 },
      { field: "mar", title: "March", hidden: true, width: 120 },
      { field: "apr", title: "April", width: 120 },
      { field: "may", title: "May", width: 120 },
      { field: "jun", title: "June", width: 120 },
      { field: "jul", title: "July", width: 120 }
    ]
  });
</script>

Moving right through the unlocked columns keeps announcing "Hierarchy" as the column header. The correct header is only heard because each cell's `aria-describedby` points to its header cell.

What we checked in the DOM
- The `role="treegrid"` table owns the `thead` and `tbody` row groups (`aria-owns`).
- The header row and every data row each own the same number of cells (locked cells first, then scrollable cells) in the same order. No element is owned twice.


2 comments
ADMIN
Viktor Tachev
Posted on: 21 Oct 2026 07:01

Hi,

Thank you for reaching out to us.

I have added the reported issue to our backlog and set its priority based on the votes. 

As a token of gratitude for reporting the behavior to us I have updated your Telerik points.

Regards,
Viktor Tachev
Progress Telerik

Love the Telerik and Kendo UI products and believe more people should try them? Invite a fellow developer to become a Progress customer and each of you can get a $50 Amazon gift voucher.

Tom
Posted on: 19 Oct 2026 12:12
I have found the same issue. Any idea when this could be fixed as we need the fixed column.