Does it make a difference in screen reader accessibility to show a success message in the same page a form was submitted? Or is it better to redirect to a different page?
1 Answer
Depends what you mean by "difference".
From a strict WCAG conformance perspective, whether you show a confirmation message on the same page or show on a new page, either is ok as long as you have coded it properly.
If doing it on the same page, use aria-live="polite"
on the container where the message is added so that it'll be read by screen readers automatically.
If you go to a new page, make sure the page <title> is appropriate for the confirmation.
You also might have to think about the "back" button in the browser. If you go back from a separate confirmation page, does that mean you are back on the form and can change values and re-submit it? If you go back from the form that has the confirmation message on it, I assume that would just to back to the page that took you to the form.
So you might have to do a little research and possibly user testing to see which is "better". There might be a "difference" in user experience, but not in accessiblity.
-
I don't have a good reason to use another page when there's ways to make it work on the same page, so I'll go with the
aria-live="polite"
. However, it says in ARIA Live Regions thatrole="alert"
should be added as a redundancy. I'm actually using Bootstrap which seems to only userole="alert"
for alerts - wondering ifrole="alert"
is enough for my form submission success message. Jan 22, 2019 at 16:02 -
i would strongly recommend not using
role="alert"
except in cases where you have an urgent message. a confirmation message is just a "nice to have" and shouldn't be an alert. the article you mentioned says to not have it redundant. you almost always only needaria-live="polite"
except for critical messages. Jan 22, 2019 at 20:17