MultiAutocomplete
MultiAutocomplete
は、ユーザーのテキスト入力に応じて候補を表示し、複数の値を取得するために使用されるコンポーネントです。
MultiAutocomplete
は、アクセシビリティに関してWAI-ARIA - Combobox Patternに従います。
FormControl
を使用しない場合は、MultiAutocomplete
にaria-label
またはaria-labelledby
を設定します。
<MultiAutocomplete placeholder="キャラクターを選択" aria-label="キャラクター"><AutocompleteOption value="孫悟空">孫悟空</AutocompleteOption><AutocompleteOption value="ベジータ">ベジータ</AutocompleteOption><AutocompleteOption value="フリーザ">フリーザ</AutocompleteOption></MultiAutocomplete>
<VStack gap="sm"><Heading as="h3" id="label">キャラクター</Heading><MultiAutocomplete placeholder="キャラクターを選択" aria-labelledby="label"><AutocompleteOption value="孫悟空">孫悟空</AutocompleteOption><AutocompleteOption value="ベジータ">ベジータ</AutocompleteOption><AutocompleteOption value="フリーザ">フリーザ</AutocompleteOption></MultiAutocomplete></VStack>
キーボード操作
キー | 説明 | 状態 |
---|---|---|
ArrowUp | 無効ではない前の項目をフォーカスします。最初の項目の場合は無効ではない最後の項目をフォーカスします。 | - |
ArrowDown | 無効ではない次の項目をフォーカスします。最後の項目の場合は無効ではない最初の項目をフォーカスします。 | - |
Home | 無効ではない最初の項目をフォーカスします。 | - |
End | 無効ではない最後の項目をフォーカスします。 | - |
Space , Enter | フォーカスされている項目を選択し、リストボックスを閉じます。 | - |
Escape | リストボックスを閉じます。 | closeOnEsc={true} |
ARIAロールと属性
コンポーネント | ロールと属性 | 使い方 |
---|---|---|
MultiAutocompleteField 内部 | role="combobox" | コンボボックスであることを示します。 |
aria-haspopup="listbox" | リストボックスが存在することを示します。 | |
aria-autocomplete="list" | 入力値に関連する候補リストを提案することを示します。 | |
aria-activedescendant | フォーカスされた項目のid を設定します。 | |
aria-expanded | リストボックスが開いている場合は"true" を設定し、閉じている場合は"false" を設定します。 | |
aria-controls | リストボックスが開いている場合は関連したMultiAutocompleteList のid を設定し、閉じている場合はundefined を設定します。 | |
aria-readonly | isReadOnly が設定されている場合は"true" を設定します。 | |
aria-disabled | isDisabled が設定されている場合は"true" を設定します。 | |
aria-invalid | isInvalid が設定されている場合は"true" を設定します。 | |
aria-required | isRequired が設定されている場合は"true" を設定します。 | |
AutocompleteClearIcon 内部 | role="button" | ボタンであることを示します。 |
aria-label | "Clear value" を設定します。 | |
MultiAutocompleteList 内部 | role="listbox" | リストボックスであることを示します。 |
id | MultiAutocompleteField と関連付けるために使用するid 。 | |
aria-multiselectable | 複数選択可能であることを示します。 | |
aria-hidden | リストボックスが開いている場合は"true" を設定し、閉じている場合は"false" を設定します。 | |
AutocompleteOptionGroup | role="group" | グループであることを示します。 |
aria-labelledby | 関連したAutocompleteOptionGroupLabel のid を設定します。 | |
AutocompleteOptionGroupLabel 内部 | role="presentation" | プレゼンテーションであることを示します。 |
id | AutocompleteOptionGroup と関連付けるために使用するid 。 | |
AutocompleteOption | role="option" | オプションであることを示します。 |
id | MultiAutocompleteField と関連付けるために使用するid 。 | |
aria-selected | オプションが選択されている場合は"true" を設定し、選択されていない場合は"false" を設定します。 | |
aria-disabled | isDisabled が設定されている場合は"true" を設定します。 |
GitHubでこのページを編集する