Radio API
API reference for the Radio components.
IDUnique identifier (auto-generated if not provided)
Default: useId()
stringOptional display label (passed through to slot)
VValue associated with this radio for group selection and form submission
stringForm field name - triggers auto hidden input when provided
stringAssociate with a form by ID (for radios outside the form element)
MaybeRef<boolean>Disables this radio (prevents selection and keyboard focus)
Default: false
stringNamespace for context provision to children (Indicator, HiddenInput)
Default: "v0:radio:root"
stringNamespace for connecting to parent Radio.Group
Default: "v0:radio:group"
stringID of element that labels this radio
stringID of element that describes this radio
booleanMarks the radio as invalid for form validation
RadioRootSlotProps<V>Default slot with radio state, actions, and ARIA attributes
stringNamespace for dependency injection
Default: "v0:radio:group"
booleanDisables the entire radio group
Default: false
boolean | "force"Auto-selects the first non-disabled item on mount.
Radio groups are inherently mandatory (selection can only be changed, not cleared),
so `mandatory="force"` is the only meaningful option.
Default: false
stringAccessible name for the group
stringID of element that labels this group
stringID of element that describes this group
booleanWhether a selection is required before form submission
stringForm field name - enables native form submission for all radios in group
ActivationActivation mode controlling when selection occurs:
- `automatic` (default): Selection follows focus (arrow keys select)
- `manual`: Selection requires explicit Enter/Space key press
Per WAI-ARIA APG, radio groups should have selection follow focus by default.
Use `manual` for toolbar radio groups or when deliberate selection is preferred.
Default: "automatic"
RadioGroupSlotPropsDefault slot with group state and ARIA attributes
stringSubmitted value when checked (defaults to context value or 'on').
Use to override the Radio.Root value for form submission.
stringForm field name (defaults to context value from Radio.Group)
stringNamespace for context injection from parent Radio.Root
Default: "v0:radio:root"
stringAssociate with form by ID (for inputs outside the form element)
stringNamespace for context injection from parent Radio.Root
Default: "v0:radio:root"
RadioIndicatorSlotPropsDefault slot for custom indicator content