From 422fcad1a9f497daff2476efdb79d1016add6a3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20Gla=CC=88ser?= Date: Wed, 27 May 2026 10:52:32 +0200 Subject: [PATCH] Disable inactive radios in multiselect pulldown --- patterns/multiselektions-pulldown.html | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/patterns/multiselektions-pulldown.html b/patterns/multiselektions-pulldown.html index 26ad618..72b533a 100644 --- a/patterns/multiselektions-pulldown.html +++ b/patterns/multiselektions-pulldown.html @@ -328,6 +328,7 @@ const radios = radioGroup.querySelectorAll('.sg-radio-field'); radioGroup.dataset.componentState = isActive ? 'active' : 'inactive-selectable'; radios.forEach((radio) => { + radio.disabled = !isActive; if (!isActive) { radio.setAttribute('aria-checked', 'false'); } @@ -485,12 +486,20 @@ const radios = activatableGroup.querySelectorAll('.sg-radio-field'); radios.forEach((otherRadio) => { otherRadio.setAttribute('aria-checked', String(otherRadio === radio)); + otherRadio.disabled = false; otherRadio.classList.remove('sg-radio-field--inactive-selectable'); otherRadio.classList.toggle('sg-form-active', otherRadio === radio); }); }); }); + document.querySelectorAll('[data-activatable-radio-group="true"]').forEach((group) => { + const isActive = group.dataset.componentState === 'active'; + group.querySelectorAll('.sg-radio-field').forEach((radio) => { + radio.disabled = !isActive; + }); + }); + updateMultiselectLabelAlignment(); window.addEventListener('resize', updateMultiselectLabelAlignment);