ListBox

The ListBox component displays a list of items and allows selection, reordering, and transfer between two or more list boxes.

Accessibility Support

Out of the box, the Telerik and Kendo UI ListBox provides extensive accessibility support and enables users with disabilities to acquire complete control over its features.

The ListBox is compliant with the Web Content Accessibility Guidelines (WCAG) 2.2 standards and Section 508 requirements, follows the Web Accessibility Initiative - Accessible Rich Internet Applications (WAI-ARIA) best practices for implementing the keyboard navigation for its component role, provides options for managing its focus and is tested against the most popular screen readers.

WAI-ARIA

This section lists the selectors, attributes, and behavior patterns supported by the component and its composite elements, if any.

ListBox List

SelectorAttributeUsage
.k-list-ulrole=listboxSpecifies the role of the ListBox ul element.
aria-label or aria-labelledbyAdds a label to the ul element of the ListBox.
aria-multiselectable=trueSignifies that the ListBox allows multiple selection. Present only when the multiple selection of the component is enabled.
.k-list-itemrole=optionSpecifies the role of the ListBox item element.
aria-selected=true/falseSet to true if the item is selected.
tabindex=0The focused listbox item should have tabindex 0, while all others -1.

ListBox Toolbar

The ListBox toolbar follows the specification of the ToolBar component.

SelectorAttributeUsage
.k-listbox-actionsrole=toolbarThe toolbar is a collection of command buttons.
aria-labelClarifies the purpose of the toolbar.
aria-controls=.k-list-ul idPoints to the ids of the role=listbox elements that are being controlled by the ToolBar.
.k-listbox-actions .k-buttonaria-label or titleAll buttons in the ToolBar must have lables, so that their purpose is clear.

Managing the Focus

The ListBox component contains a list of items and, optionally, a toolbar. When the toolbar is not enabled, the component is a single-tab-stop component. When the toolbar is present, it is included in the tab sequence of the page. Depending on its position and the LTR or RTL configuration, the toolbar can either preceed or succeed the list of ListBox items. Its tab position must respect its position on the screen.

Keyboard Shortcuts

list Element

ShortcutBehavior
F10Focuses the ListBox toolbar (the last focused or the first button in it).
SpaceSelects the focused ListBox Item
Up ArrowSelects the previous item.
Down ArrowSelects the next item.
Ctrl (or Control on Mac) + SpaceSelects or deselects an item.
Shift + Up ArrowAdds the previous item to the selected items.
Shift + Down ArrowAdds the next item to the selected items.
Ctrl (or Cmd on Mac) + Up ArrowMoves the focus to the previous item.
Ctrl (or Cmd on Mac) + Down ArrowMoves the focus to the next item.
DelDeletes the selected items.
Ctrl (or Cmd on Mac) + Right ArrowAdds the selected items to the connected ListBox.
Ctrl (or Cmd on Mac) + Left ArrowAdds the selected items from the connected ListBox to the current one.
Ctrl (or Cmd on Mac) + Shift + Up ArrowShifts the selected items upwards.
Ctrl (or Cmd on Mac) + Shift + Down ArrowShifts the selected items downwards.
Ctrl (or Cmd on Mac) + Shift + Right ArrowTransfers all items to the connected ListBox.
Ctrl (or Cmd on Mac) + Shift + Left ArrowTransfers all items from the connected ListBox.

toolbar Element

ShortcutBehavior
Right Arrow or Down ArrowFocuses the next button in the toolbar.
Left Arrow or Up ArrowFocuses the previous button in the toolbar.
EnterExecutes the currenly focused button command if enabled.

Testing

The ListBox has been extensively tested automatically with axe-core and manually with the most popular screen readers.

Screen Readers

The ListBox has been tested with the following screen readers and browsers combinations:

EnvironmentTool
FirefoxNVDA
ChromeJAWS
Microsoft EdgeJAWS

Resources