From fda0d2eb2234f9c9df01fb928e8e8acbbfe46bda Mon Sep 17 00:00:00 2001 From: daria <95225431+dariiing@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:55:14 +0300 Subject: [PATCH] add screen reader support for radio buttons --- www/common/common-interface.js | 9 ++++++++- www/form/inner.js | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/www/common/common-interface.js b/www/common/common-interface.js index 0d242311c..774a3f4a9 100644 --- a/www/common/common-interface.js +++ b/www/common/common-interface.js @@ -1416,7 +1416,14 @@ define([ } }); - $input.change(function () { $(mark).focus(); }); + $input.change(function () { + $(mark).attr('aria-checked', $input.is(':checked') ? 'true' : 'false'); + $('input[name="' + name + '"]').not($input).each(function() { + var otherRadio = $(this).closest('.cp-radio').find('.cp-radio-mark'); + otherRadio.attr('aria-checked', false); + }); + $(mark).focus(); + }); var radio = h('label', labelOpts, [ input, diff --git a/www/form/inner.js b/www/form/inner.js index 560a48ef4..90fbba8a0 100644 --- a/www/form/inner.js +++ b/www/form/inner.js @@ -3524,7 +3524,7 @@ define([ anonOffContent, false, { input: { value: 0 }, }); - var radioContainer = h('div.cp-form-required-radio', [ + var radioContainer = h('fieldset.cp-form-required-radio', {'aria-label': Messages.form_answerChoice },[ Messages.form_answerChoice, anonRadioOn, anonRadioOff,