Choix de l'univers FT

Radio Bouton radio

Permet de réaliser un choix parmi une liste. De fait, un bouton radio n’apparaît jamais seul et appartient nécessairement à un groupe de boutons radio. Lorsqu’un utilisateur choisit un nouvel élément, le choix précédent est automatiquement désélectionné.

Documentation : Figma

Langage:  HTML

<div role="group" aria-labelledby="legend_600888425">
    <div class="legend-container" id="legend-container_720848441">
        <p class="form-legend" id="legend_600888425">Légende du groupe</p>
    </div>
    <div class="form-check with-checked-bg">
        <input class="form-check-input" id="form-radio_552420377" name="form-radio_592239538" type="radio" value="value_704548678">

        <label class="form-check-label" for="form-radio_552420377">
            Libellé de l'élement</label>
    </div>
    <div class="form-check with-checked-bg">
        <input class="form-check-input" id="form-radio_852257119" name="form-radio_592239538" type="radio" value="value_44910239">

        <label class="form-check-label" for="form-radio_852257119">
            Libellé de l'élément</label>
    </div>

</div>
  • URL Preview : /js/disabled-a11y.js
  • Chemin d'accès : public/js/disabled-a11y.js
  • Taille : 824 Bytes
  • Contenu :
    window.addEventListener('load', function () {
        /**
         * Désactivation du clic sur les input disabled
         */
        // On liste les input disabled
        const disabledInputs = document.querySelectorAll('[aria-disabled="true"]');
    
        for (const input of disabledInputs) {
            // Pour chaque input on empêche le click
            input.addEventListener('click', function (e) {
                e.preventDefault();
                e.stopPropagation();
            });
    
            // Pour chaque label associé, on empêche le click
            const label = document.querySelector('[for="' + input.id + '"]');
            if (label) {
                document.querySelector('[for="' + input.id + '"]').addEventListener('click', function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                });
            }
        }
    });