Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Calendar, TreeSelect, MultiSelect, AutoComplete, CascadeSelect, Table | aria-expanded attribute is undefined and aria-controls attribute referencing a hidden element #14358

Closed
TaneliTuomola opened this issue Dec 13, 2023 · 2 comments
Assignees
Labels
Component: Accessibility Issue or pull request is related to WCAG or ARIA LTS-16-PORTABLE Type: Bug Issue contains a bug related to a specific component. Something about the component is not working
Milestone

Comments

@TaneliTuomola
Copy link

Describe the bug

Required ARIA attribute is missing.

Elements with role "combobox" should contain aria-expanded and aria-controls attribute. Aria-expanded attribute is missing and aria-controls attribute refers to the element that is not in the DOM yet. Aria-controls only needs to be set when the popup is visible.

The issue affects at least a few form components that use overlay: Calendar, Dropdown & TreeSelect.

The same problem also applies to the Paginator Dropdown: #14260

Also related to the OverlayPanel aria issue: #14290

Environment

Windows, Chrome

Reproducer

https://primeng.org/dropdown

Angular version

17.0.0

PrimeNG version

17.0.0

Build / Runtime

Angular CLI App

Language

TypeScript

Node version (for AoT issues node --version)

18.16.0

Browser(s)

No response

Steps to reproduce the behavior

No response

Expected behavior

No response

@TaneliTuomola TaneliTuomola added the Status: Needs Triage Issue will be reviewed by Core Team and a relevant label will be added as soon as possible label Dec 13, 2023
@mehmetcetin01140 mehmetcetin01140 added Component: Accessibility Issue or pull request is related to WCAG or ARIA and removed Status: Needs Triage Issue will be reviewed by Core Team and a relevant label will be added as soon as possible labels Jan 11, 2024
@barbGit2
Copy link

In addition to what was mentioned in this ticket, the Calendar's panelId does not refer to any element in the Calender. I think the Calendar template needs to be updated so that the div.p-datepicker element should have an id attribute set to panelId:

...
            <div
                #contentWrapper
           [attr.id]="panelId"
                [class]="panelStyleClass"
                [ngStyle]="panelStyle"
                [ngClass]="{
                    'p-datepicker p-component': true,
                    'p-datepicker-inline': inline,
                    'p-disabled': disabled,
                    'p-datepicker-timeonly': timeOnly,
                    'p-datepicker-multiple-month': this.numberOfMonths > 1,
                    'p-datepicker-monthpicker': view === 'month',
                    'p-datepicker-touch-ui': touchUI
                }"
...

@cetincakiroglu cetincakiroglu added this to the 17.9.0 milestone Feb 28, 2024
@cetincakiroglu cetincakiroglu changed the title Calendar, Dropdown & TreeSelect: Missing aria-expanded attribute Calendar, TreeSelect, MultiSelect, AutoComplete, Password | aria-expanded attribute is undefined Feb 28, 2024
@cetincakiroglu
Copy link
Contributor

Hi,

Thanks for reporting the issue, we'll address all the overlay components with 17.9.0 release.

@cetincakiroglu cetincakiroglu added the Type: Bug Issue contains a bug related to a specific component. Something about the component is not working label Feb 28, 2024
@cetincakiroglu cetincakiroglu changed the title Calendar, TreeSelect, MultiSelect, AutoComplete, Password | aria-expanded attribute is undefined Calendar, TreeSelect, MultiSelect, AutoComplete, Password | aria-expanded attribute is undefined and aria-controls attribute referencing a hidden element Feb 28, 2024
@cetincakiroglu cetincakiroglu changed the title Calendar, TreeSelect, MultiSelect, AutoComplete, Password | aria-expanded attribute is undefined and aria-controls attribute referencing a hidden element Calendar, TreeSelect, MultiSelect, AutoComplete, CascadeSelect, Table | aria-expanded attribute is undefined and aria-controls attribute referencing a hidden element Feb 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Accessibility Issue or pull request is related to WCAG or ARIA LTS-16-PORTABLE Type: Bug Issue contains a bug related to a specific component. Something about the component is not working
Projects
None yet
Development

No branches or pull requests

4 participants