Skip to content

FilteredActionList: filter input references a missing list while loading or showing a message #8633

Open

Description

@HadrielWonda

Description

The filter input in FilteredActionList always renders aria-expanded="true" and aria-controls={listId}. When the body shows a loader (loadingType bodySpinner or bodySkeleton) or a message (for example, no results), the list with that id is not rendered, so the combobox points at an element that does not exist.

Assistive technology is told a popup is open when no list is rendered, and axe reports aria-valid-attr-value (critical): Invalid ARIA attribute value: aria-controls=":r0:".

SelectPanel renders FilteredActionList, so it can show the same markup in its loading and empty states.

Steps to reproduce

  1. Open any of these Storybook stories:
  2. Inspect the filter input: it has aria-expanded="true" and aria-controls=":r0:".
  3. document.getElementById(':r0:') returns null.
  4. Running axe on the story reports aria-valid-attr-value.

Version

v38.43.0 (current main)

Browser

All (found with axe-core 4.10 in Chromium)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions