merisia-radios

<merisia-radios>

Groupe de boutons radio accessible avec structure fieldset/legend et options avec aide individuelle. Le focus des boutons radio est circulaire.

Démos

Vertical (défaut)

<merisia-radios legend="Mode de transport principal" name="transport" required></merisia-radios>
<script>
  document.querySelector('merisia-radios').options = [
    { value: 'voiture', label: 'Voiture' },
    { value: 'velo', label: 'Vélo', hint: 'Recommandé pour moins de 5 km' },
    { value: 'transport', label: 'Transport en commun' },
    { value: 'marche', label: 'Marche à pied', disabled: true },
  ];
</script>

Avec erreur

const el = document.querySelector('merisia-radios');
el.errors = ["Veuillez sélectionner une option."];

Lecture seule

const el = document.querySelector('merisia-radios');
el.readonly = true;

Propriétés

Propriété Attribut Type Défaut Description
MerisiaRadios (propres)
options RadioOption[] [] Liste d'options : { value, label, hint?, disabled? } (propriété JS uniquement)
orientation orientation 'vertical' | 'horizontal' 'vertical' Disposition des boutons radio
MerisiaChoiceBase (hérités)
legend legend string '' Texte de la légende du groupe (équivalent du libellé)
hint hint string '' Aide contextuelle affichée sous la légende
errors string[] [] Liste de messages d'erreur (propriété JS uniquement)
errorPrefix error-prefix string 'Erreur :' Préfixe des messages d'erreur (i18n, visuellement masqué)
invalid invalid boolean false État d'erreur (synchronisé automatiquement avec errors)
MerisiaFormElement (hérités)
name name string '' Nom du groupe dans le formulaire
value value string '' Valeur de l'option sélectionnée
required required boolean false Rend la sélection obligatoire
disabled disabled boolean false Désactive tout le groupe
MerisiaElement (hérités)
id id string auto-généré Identifiant unique du composant
lang lang string 'fr' Langue pour les messages internes (i18n)
width width number Largeur maximale en caractères : max-width: calc(N ch + 1.5rem)

Ressources externes

Import

import '@merisia-inc/merisia-components/radios';