Listbox

A list to select an individual value. It can perform validation of required field and custom rules.

Properties

Available properties for Listbox with supported data types or values. You can write JavaScript almost anywhere in Retool to manipulate or read information about components.

NameTypeDescriptionvaluestring | number | boolean | null | undefined

The current value.

allowDeselectboolean

Whether to allow deselection of an item.

automaticItemColorsboolean

Whether to automatically assign a color to each item.

captionByIndexstring[]

A list of captions for each item, by index.

colorByIndexstring[]

A list of colors for each item, by index.

data{ [key: string]: unknown }[]

The source data for the component.

disabledboolean

Whether user input, interaction, or selection is disabled.

disabledByIndexboolean[]

A list of boolean values for each item, by index, that reflect whether they are disabled.

disabledValues(string | number | boolean | null | undefined)[]

A list of values not available for selection.

emptyMessagestring

The message to display if no value is set.

fallbackTextByIndexstring[]

A list of values to use as fallback text for each option. Only the first two characters are displayed. If multiple words are provided, the first letter of each word is used.

formDataKeystring

The key used by a Form component to assign default values to input fields using form.initialData, and to construct the form.data property.

hiddenboolean

Whether the component is visible.

hiddenByIndexboolean[]

A list of boolean values for each item, by index, that reflect whether they are hidden.

hideValidationMessageboolean

Whether to hide the validation message if the invalid is true.

iconByIndexIconKey[]

A list of icons for each item, by index.

imageByIndexstring[]

A list of images for each item, by index.

invalidboolean

Whether the current value has failed any validation rules.

itemAdornmentShape'circle' | 'square'

The adornment shape.

itemAdornmentSize'auto' | 'small' | 'large'

The adornment size.

itemMode'dynamic' | 'static'

The configuration mode for option lists. Either dynamic for mapped options or static for manual options.

labelstring

The text to display as a label for the input field.

labelAlign'left' | 'right'

The horizontal alignment of the label.

labelCaptionstring

The additional text to display with the label.

labelPosition'left' | 'top'

The position of the label relative to the input field.

labelWidthnumber

The label width, in the unit specified in labelWidthUnit.

labelWidthUnit'%' | 'px' | 'col'

The specified units for labelWidth.

labelWrapboolean

Whether the label can wrap to multiple lines.

labelsstring[]

A list of labels for each item. Falls back to the corresponding value if no label is provided.

maintainSpaceWhenHiddenboolean

Whether the component takes up space on the canvas if hidden is true.

marginstring

The amount of margin to render outside of the component.

requiredboolean

Whether the input is required for validation.

searchMode'fuzzy' | 'disabled' | 'caseSensitive' | 'caseInsensitive'

The type of search to perform.

searchTermstring

The search term currently filtering items.

selectedIndexnumber | null

The currently selected value, by index.

selectedItemunknown | null

The currently selected item.

selectedLabelstring

The label of the currently selected value, by index.

showInEditorboolean

Whether the component remains visible in the editor if hidden is true.

showSelectionIndicatorboolean

Whether to display an icon next to a selected item.

tooltipByIndexstring[]

A list of tooltips for each item, by index.

tooltipTextstring

The text to display in a tooltip on hover or focus.

validationMessagestring

The validation message to display if the input is invalid.

values(string | number | boolean | null | undefined)[]

A list of possible values.

deprecatedLabelsDeprecatedstring[]

Events

Events are triggered by user interactions with Listbox. Use event handling to trigger queries or other actions in response to events.

NameDescriptionChange

A user changes the current value.

Methods

Methods for interacting with Listbox. You can write JavaScript almost anywhere in Retool and use methods to manipulate data or components.

NameDescriptionsetValue(value: boolean | string | number | void, strict: any)

Set the current value.

clearValue()

Clear the current value.

scrollIntoView(options: any)

Scrolls the canvas or parent container so that the selected component appears in the visible area.

validate()

Validates the value of the input field.

clearValidation()

Clear the validation message from the input field.

setHidden(hidden: boolean)

Set the hidden value to toggle whether the component is visible. Defaults to true without a parameter.

setDisabled(disabled: boolean)

Set the disabled value to toggle whether the input field is disabled. Defaults to true without a parameter.

resetValue()

Reset value to the default value.

focus()

Set focus on the input field.

blur()

Removes focus on the input field.

Related components