2.12 Default “All Roles” option incorrectly announced as invalid (Positive)
2.12.1 WCAG 1.3.1 (A), 4.1.2 (A) - Desktop, Mobile, iPad
On the Log In for Admins page, the search filter includes a combobox that allows users to filter results by role. The default option is “All Roles”, which allows searching across all roles without narrowing the results.
When screen reader users focus on the combobox while “All Roles” is selected, it is announced as “Role, combobox, All Roles, invalid entry”. This may lead screen reader users to believe they cannot search across all roles, even though they can: selecting “All Roles” is valid and still allows a search to be performed.
The incorrect “invalid” announcement occurs because the value for the “All Roles” option is empty ("") and the <select> element includes the required attribute. In HTML, a required <select> treats an empty string as an invalid value, which triggers the invalid state in assistive technologies.
FIGURE 2.18: Role combobox highlighted with NVDA speech viewer on the Log in for Admins page
2.12.2 Code Snippet
<select id="admin_role_name" name="admin[role_name]" required="required">
<option value="" selected="selected">ALL ROLES</option>
<option value="ROLE_SUPER_ADMIN">Super Admin</option>
<option value="ROLE_ADMIN_MANAGER">Admin Manager</option>
...
</select>
2.12.3 Recommendation
Ensure that the default “All Roles” option is not treated as invalid when the combobox is marked as required. This can be achieved by removing the required attribute if selecting a specific role is not mandatory.
Additionally, providing a non-empty value for the “All Roles” option (e.g. "ALL") will ensure that it is considered valid by browsers and assistive technologies.
<select id="admin_role_name" name="admin[role_name]">
<option value="ALL" selected="selected">ALL ROLES</option>
<option value="ROLE_SUPER_ADMIN">Super Admin</option>
...
</select>
2.12.4 Spot Check: February 2026
This issue has been resolved. The combobox no longer has “All Roles” as a default empty value, so it is not announced as invalid.
This has been updated from a ‘Medium’ severity issue to a ‘Positive’ finding.