JAWS "List of Elements" hotkeys do not display all information for form fields inside tables
ztfine2 opened this issue · 4 comments
Summary
When a table contains one or more form fields (e.g., a single input or button, or a group of multiple inputs), those form fields are not adequately labeled unless both 1. a rowheader is present and 2. the input (or group) is itself directly labeled using the column and row header cells.
Expected result
In the "List of edit buttons," "List of form fields," etc lists, I expect that elements have proper columnheader and rowheader context.
Actual result
In most cases (except the one described above), one or more context pieces are missing.
Example
https://codepen.io/Zachary-Fine/pen/JjqgYEO
Notice that, in all the rows except body rows 1 and 3, the edit boxes do not have proper labeling. In most cases, buttons are not given proper context either. The exception is in rows 1 and 3, in the case where a button is inside a labeled group.
Additional Information
JAWS version and build number
JAWS v2023.2402.1
Operating System and version
Windows 10, version 22H2, OS build 19045.4529
Browser and version:
Google Chrome - 126.0.6478.127 (Official Build) (64-bit) (cohort: Stable)
I don't see a JAWS problem here. JAWS displays the labelling of the elements correctly in the element list. Rowheader and columnheader do not automatically result in a label. This could be changed in the future: w3c/aria#2148
Default row/columnheader label associations would certainly work for these examples, but the problem here seems to be that labels (from aria-labelledby) on groups within a table cell are not recognized by JAWS. The edit box in the second row ("Labelledby without rowheader") / third column ("col 3") does not have a label - using Ins+F5 shows that it is listed as "Unlabeled1 edit".
What is noticeable in the example here is a small irregularity in the JAWS element overview:
- If an element has a group label (via fieldset + legend or role=group), the group label is displayed in the element overview in addition to the label
- If an element has a group label but no label, the group label is not displayed in the element overview.
A separate ticket can be created for this problem because it has nothing to do with the table.