Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Issues with Accessibility Features of OJ Table

DaveArchJul 15 2022

JET Version 10.x
Hi Community
We have some clients with a large number of users who have accessibility needs. We are finding that, whilst most of the OJ components have good support for accessibility, the OJ Table component uses techniques which causing issues for keyboard-only and screen reader users.
Specifically, there are 3 main issues:

  1. Focusable elements within a row don't receive focus in the order a user would expect and require the custom interaction via the F2 key:
    Where navigation links are contained within a row, a user must hit F2 to navigate into the row before being able to select the links. The same is true for editable tables where the F2 key is needed to access the row. Most keyboard-only users are not used to this pattern and instead expect tables to be navigable via the Left and Right keyboard keys once a row is selected as explained here. For screen-reader users, this is even harder as the table does not announce how to navigate so users have no idea of how to interact with the table.
    https://www.oracle.com/webfolder/technetwork/jet/jetCookbook.html?component=table&demo=actionTable
    https://www.oracle.com/webfolder/technetwork/jet/jetCookbook.html?component=table&demo=editableFormTable

  2. Tables are not marked up as tables or the structure of the table is not programmatically implemented.
    This is because the ARIA ‘application’ role specified on the table tag removes any table semantics.
    <table data-oj-internal="" class="oj-table-element oj-component-initnode" role="application" tabindex="0" aria-labelledby="nd-11908-t" x-ms-format-detection="none">
    This means that a screen reader user will not understand the structural makeup of the table as well as relations in the data.
    A screen reader uses the programmatic implementation to convey structure and layout, without this a screen reader user will not know how a table is structured, or even if there is a table. A screen reader also uses this programmatic implementation to present to the user via a way of screen reader key combinations, a way to navigate the data by column, rows and cells. Because they can't use these navigation mechanisms, a screen reader user must use arrow keys to read through content in a sequential manner and as required to read each bit of content in order.

  3. It appears that some table functionality, such as resizing is not available via keyboard navigation, only using a mouse.
    Is anyone from the JET product team able to comment on the above?
    Many thanks

This post has been answered by John JB Brock-Oracle on Jul 25 2022
Jump to Answer
Comments
Post Details
Added on Jul 15 2022
2 comments
178 views