Keyboard Navigation

Keyboard Shortcuts

This section lists the keyboard shortcuts supported by the MultiSelect and its composite elements.

MultiSelect Wrapping Element

The following table summarizes the keyboard shortcuts and input behavior supported by the MultiSelect wrapper element:

ShortcutBehavior
Typing in the inputFocuses the matched item.
Alt (or Opt on Mac) + DownOpens the popup.
Alt (or Opt on Mac) + Up or EscCloses the popup.
Left ArrowFocuses the previous tag item in the selected list.
Right ArrowFocuses the next tag item in the selected list.
Delete or BackspaceWhen the focused item is a tag list, removes the item from the selection.
EscClears the value when the popup is not open.

Listbox Popup

ShortcutBehavior
Down ArrowMoves the focus to the next item.
Up ArrowMoves the focus to the previous item.
Alt (or Opt on Mac) + Up Arrow or EscCloses the popup.
HomeMoves the focus to the first item. Applicable only when the currently focused element is not an input. When an input is the focused element, the Home and End keys are used for the cursor position.
EndMoves the focus to the last item. Applicable only when the currently focused element is not an input. When an input is the focused element, the Home and End keys are used for the cursor position.
EnterSelects the item.
Page UpScrolls the popup list up.
Page DownScrolls the popup list down.
TabCloses the popup and focuses the next focusable element.

The listbox placed in the popup element of the MultiSelect has to implement the keyboard navigation specification for a Popup List component. In addition to the above-mentioned combinations, the listbox also supports the shortcuts listed in the following table. Note that the combinations including the Shift key are based on the behavior of the Windows File Explorer.

ShortcutBehavior
Shift + Up ArrowCreates a range selection between the last selected or deselected item and the item that is immediately before the currently focused one. All items outside that range are deselected. The last selected or deselected item is stored when using the mouse to click an item, or when using Enter to select or deselect an item. The last selected or deselected item is reset when the value of the MultiSelect is cleared. If the there is no previously selected item, selects only the currently focused and the previous one. At the end of the operation, the focus moves to the the item that is immediately before the currently focused one.
Shift + Down ArrowCreates a range selection between the last selected or deselected item and the item that is immediately after the currently focused one. All items outside that range are deselected. The last selected or deselected item is stored when using the mouse to click an item, or when using Enter to select or deselect an item. The last selected or deselected item is reset when the value of the MultiSelect is cleared. If the there is no previously selected item, selects only the currently focused and the next one. At the end of the operation, the focus moves to the the item that is immediately after the currently focused one.
Ctrl (or Cmd on Mac) + Shift + HomeCreates a range selection from the currently focused item up to the beginning of the list. All items outside that range are deselected.
Ctrl (or Cmd on Mac) + Shift + EndCreates a range selection from the currently focused item down to the end of the list. All items outside that range are deselected.
Ctrl (or Cmd on Mac) + ASelects all items present in the list. If all items are already selected, deselects them.

Resources

WAI-ARIA Authoring Practices: Combobox Pattern

WAI-ARIA Authoring Practices: Listbox Pattern

WAI-ARIA Authoring Practices: Select-Only Combobox

Example
View Source
Change Theme:

See Also