- Docs
- components
- CheckboxGroup
CheckboxGroup
A CheckboxGroup allows users to select multiple items from a list of options.
Checkbox groups can be built in HTML with the <fieldset>
and <input>
elements, however these can be difficult to style. CheckboxGroup helps achieve accessible checkbox groups that can be styled as needed.
Installation
Composed Components
A CheckboxGroup uses the following components, which may also be used standalone or reused in other components.
Label
A label provides context for an element.
Checkbox
A checkbox allows a user to select multiple items from a list of individual items, or to mark one individual item as selected.
Reusable Wrapper - Example
If you will use a CheckboxGroup in multiple places in your app, you can wrap all of the pieces into a reusable component. This way, the DOM structure, styling code, and other logic are defined in a single place and reused everywhere to ensure consistency.
The installed file includes a reusable wrapper JollyCheckboxGroup
. This wrapper serves as an excellent starting point for use throughout your codebase.
The JollyCheckboxGroup
component extends the props of React Aria CheckboxGroup and adds:
Prop | Type | Default | Description |
---|---|---|---|
label | string | undefined | undefined | Label for the checkbox group |
description | string | undefined | undefined | Description text for the checkbox group |
errorMessage | string | ((validation: AriaValidationResult) => string) | undefined | undefined | Error message to display or function to generate it |
You can copy this wrapper and create variations as needed for different use cases in your application. This approach promotes consistency while still allowing for flexibility in implementation.
Examples
Basic
Validation
Individual Checkbox Validation
Description
Disabled
The entire CheckboxGroup can be disabled with the isDisabled prop.
To disable an individual checkbox, pass isDisabled to the Checkbox instead.