JAWS ignores aria-label when used arrow keys to navigate to an edit field
Summary
With arrow key navigation, JAWS screen reader is ignoring the aria-label associated with the text input field. When used TAB to navigate, it is announcing the aria-label as expected.
Example: Go to https://www.freedomscientific.com/SurfsUp/WebTrack.htm and navigate to the 'first', 'middle' and 'last' fields using arrow keys and TAB. Notice the difference in JAWS output. With TAB, it is announcing the aria-label. With arrow keys, it just says "Edit. Blank."
Expected result
JAWS speaks the aria-label associated with the element.
Actual result
JAWS ignores the aria-label
Additional Information
Using JAWS version: 2022.2207.25 ILM Other screen readers like NVDA and Voice-over are working as expected.
Operating System and version
OS: Windows
Browser and version:
Browser: Google Chrome 104.0.5112.79 and Firefox 103.0.1
I can confirm the bug. However, it only occurs if there is a <label> element in front of the form field with aria-label (regardless of whether the <label> is linked to the field's id via for or not). The logic of JAWS seems to be:
- if there is no
<label>in front of it, then I output aria-label as Accessible Name. - if there is a
<label>in front of it, then this will already be the Accessible Name (no matter if it actually is or not). since I output the<label>anyway during linear reading, I don't need to output a Accessible Name at the form field anymore, because otherwise this would be a double output (which would be correct without aria-label).
@JAWS-test Even in the case of no <label> tag, it needs one extra arrow keystroke to move to the next element. First time it announces the aria-label and second time it announces 'edit blank'.
@rishi07
Even in the case of no label tag, it needs one extra arrow keystroke to move to the next element. First time it announces the aria-label and second time it announces 'edit blank'.
Yes, this is correct, but in my opinion is not a bug of JAWS, but the default behavior. For all form fields, except radio buttons and checkboxes, the label is always output in a separate reading step before the form field.