- Success Criterion 3.3.4
- Conformance level AA
Confirmation Dialog That Never Shows What’s Being Confirmed
3.3.4 — Error Prevention (Legal, Financial, Data)
Scenario
Setting
A weather app's forecast screen
What’s wrong
"Confirm" dialog that doesn't display the data being confirmed (rubber-stamp confirm ≠ checked).
Example
function onDeleteAlert() {
if (confirm('Are you sure?')) {
deleteAlert(alertId);
}
} Why it matters
A user managing alerts for five cities can't tell from 'Are you sure?' which city's alert is about to be deleted.
How to test
Trigger the 'Confirm' dialog: if it doesn't display the actual data being confirmed (a rubber-stamp confirm with no specifics), it fails.
How to fix
Always name the specific item being acted on inside the confirmation text, never a generic yes/no prompt.
function onDeleteAlert() {
if (confirm('Delete the severe weather alert for Denver, CO?')) {
deleteAlert(alertId);
}
} Outcome
The user confirms deleting the right city's alert and keeps the other four intact.
Who is affected
Screen reader users and people with cognitive disabilities who need the specific item named to confirm they're deleting the right thing.
Learn more
- Understanding Understanding document (opens in a new tab)
Related scenarios
- Binding Purchase Submitted With No Review Step Beforehand
- One-Click Order Placed With No Chance to Review It First
- Permanent Data Deletion With No Confirmation or Undo
- Legal Commitment Submitted With No Review-and-Confirm Step
- Review Page That Isn’t Actually Editable Before Final Submission
- Financial Transfer Form That Never Confirms the Entered Details