-
Type:
Bug
-
Resolution: Fixed
-
Priority:
High
-
Affects Version/s: 10.3.0, 11.0.0
-
Component/s: Accessibility, Sprint
-
10.03
-
Severity 3 - Minor
-
Accessibility
Issue Summary
Error messages in "Create sprint" and "Edit sprint" modals are not announced by screen readers.
Test URL
Steps to Reproduce
- Open the Jira DC application.
- Activate the "Projects" button in the header, then select a project from the popup.
- Activate the "Backlog" link from the Projects side navigation.
- Using a screen reader (JAWS/NVDA), activate "Create sprint" button > a dialog appears.
- In the "Start date", enter a past date such as "14/08/2015".
- An inline error message "The sprint start date is in the past" appears which is not communicated to the screen reader users.
- Proceed with "Create" button.
- Observe the presence of another error message in red.
- Observe that these error messages are not communicated to the screen reader users.
Screenshot 1

Screenshot 2

Screen Recording
Recording 2025-09-11 164921.mp4![]()
Actual Results
When a user enters an invalid date in the “Start date” field within the "Create sprint" or "Edit sprint" modal, an inline error message, “The sprint start date is in the past,” appears. Screen readers do not announce this message.
Additionally, if the user proceeds with the "Create" button, a dynamic error message, "'11/2/1990' is not a valid date. Please enter the date in the following format: dd/MMM/yy h:mm a," appears. The focus remains on the "Create" button instead of moving to the error field, and screen readers do not announce this.
As a result, these error messages are not communicated to the users of a screen reader and users are unaware about the occurrence of errors.
Expected Results
Error messages must be programmatically associated with the relevant form field.
Apply the following changes ->
- Assign a unique id to each error message container.
- Reference both id values in the form field's aria-describedby attribute, separated by a space.
- Ensure the aria-describedby value matches the error message container's ids.
- Use an empty live region (role="alert" or aria-live="assertive"). Dynamically populate it with errors for immediate announcement.
- Set focus on the first field with an error using the JavaScript .focus() method when the form submits.
Code Snippet
<div id="live-error-region" role="alert" aria-live="assertive" class="visually-hidden"></div> (...) <label for="ghx-sprint-start-date">Start date:</label> (...) <input id="ghx-sprint-start-date" class="text medium-field" aria-describedby="date-inline-error date-submit-error" ...> (...) <!--Inline error msg --> <span id="date-inline-error" ...>The sprint start date is in the past</p></span> <!-- submit error msg --> <span id="date-submit-error">'11/2/1990' is not a valid date. Please enter the date in the following format: dd/MMM/yy h:mm a</div>
Workaround
Currently there is no known workaround for this behavior. A workaround will be added here when available.
Environment
Windows - 11 Pro
MacBook Pro (16 inch, 2021)
macOs 15.4.1
Chrome - Version 139.0.7258.128 (Official Build) (arm64)
Firefox- Version 136.0.4
Safari- Version 18.3 (20620.2.4.11.5)
JAWS- Version 2023
NVDA- Version 2024.4.2.35031
Voiceover - Version Latest
- mentioned in
-
Page Loading...