The Listbox component for Retool Apps
An input field to select an option from a list.
Properties
All properties for this object with supported data types or values. You can write JavaScript almost anywhere in Retool to manipulate or read property values.
allowDeselect
Whether to allow deselection of an item.
Type | boolean |
Format | True/False |
Configurability | Inspector |
Default | false |
Examples
true
deprecatedLabels
A list of labels for each item. Falls back to the corresponding value
if no label is provided.
Type | array |
Array values | string |
Configurability | Read-only |
Default | [] |
Examples
["Label 1", "Label 2", "Label 3"]
disabled
Whether input, interaction, selection, or triggering is disabled.
Type | boolean |
Format | True/False |
Configurability | Inspector > Interaction > Disabled |
Default | false |
Examples
true
disabledValues
A list of values not available for selection.
Type | array |
Array values | boolean |
Configurability | Read-only |
Default | null |
emptyMessage
The message to display if no value is set.
Type | string |
Configurability | Inspector > Appearance > Empty state |
Default | null |
events
A list of configured event handlers that trigger actions or queries.
Type | array |
Array values | object |
Configurability | Inspector > Interaction > Event handlers |
Default | null |
Array Object Properties
event
The event that triggers the action. Refer to the events section for details of available events for this object.
Type | string |
Configurability | Inspector > Interaction > Event handlers > Event |
Default | null |
method
The JavaScript method to perform when type
is datasource
, widget
, state
, or localStorage
.
Type | string |
Configurability | Inspector > Interaction > Event handlers > Edit event handler > Run script actions |
Default | null |
type
The type of action to perform.
Type | string | ||||||||||||||
Configurability | Inspector > Interaction > Event handlers > Edit event handler > Action | ||||||||||||||
Allowed Values |
| ||||||||||||||
Default | null |
id
The unique identifier (name).
Type | string |
Format | Plain Text |
Configurability | Inspector |
Default | listbox1 |
Examples
query1
button1
isHiddenOnDesktop
Whether to show or hide this object in the desktop layout.
Type | boolean |
Format | True/False |
Configurability | Inspector > Appearance > Advanced > Show on desktop |
Default | false |
Examples
true
isHiddenOnMobile
Whether to show or hide this object in the mobile layout.
Type | boolean |
Format | True/False |
Configurability | Inspector > Appearance > Advanced > Show on mobile |
Default | true |
Examples
true
labelPosition
The position of the label relative to the input field or value.
Type | string | |||||||||
Format | Plain Text | |||||||||
Configurability | Inspector > Content > Add-ons > Label > Position | |||||||||
Allowed Values |
| |||||||||
Default | left |
Examples
top
labels
A list of labels for each item. Falls back to the corresponding value
if no label is provided.
Type | array |
Array values | string |
Configurability | Read-only |
Default | [] |
Examples
["Label 1", "Label 2", "Label 3"]
maintainSpaceWhenHidden
Whether to take up space on the canvas if hidden
is true
.
Type | boolean |
Format | True/False |
Configurability | Inspector > Appearance > Advanced > Maintain space when hidden |
Default | false |
Examples
true
margin
The amount of margin to render outside.
Type | string | |||||||||
Format | Plain Text | |||||||||
Configurability | Inspector > Spacing > Margin | |||||||||
Allowed Values |
| |||||||||
Default | 4px 8px |
Examples
4px 8px
required
Whether a value is required to be selected.
Type | boolean |
Format | True/False |
Configurability | Inspector > Interaction > Validation rules > Required |
Default | false |
Examples
true
searchMode
The type of search to perform.
Type | string | ||||||||
Configurability | Inspector | ||||||||
Allowed Values |
| ||||||||
Default | null |
searchTerm
An optional string to filter the displayed options. Matches values or labels if provided.
Type | string |
Configurability | Inspector > Interaction > Search term |
Default | null |
selectedIndex
The selected values, by index.
Type | number |
Format | Integer |
Configurability | Read-only |
Default | [] |
Examples
["Value 1", "Value 2"]
selectedItem
The selected item.
Type | string | number | boolean | object | array |
Format | Custom data |
Configurability | Read-only |
Default | null |
Examples
{"id": "1", "name": "Item 1"}
selectedLabel
The label of the selected value, by index.
Type | string |
Format | string |
Configurability | Read-only |
Default | null |
Examples
Value 1
showInEditor
Whether the component remains visible in the editor if hidden
is true
.
Type | boolean |
Format | True/False |
Configurability | Inspector > Appearance > Advanced > Always show in edit mode |
Default | false |
Examples
true
showSelectionIndicator
Whether to display an icon next to a selected item.
Type | boolean |
Format | True/False |
Configurability | Inspector > Appearance > Advanced > Show selection indicator |
Default | true |
Examples
true
tooltipText
The tooltip text to display next to the label on hover.
Type | string |
Format | Markdown |
Configurability | Inspector > Content > Add-ons > Helper text |
Default | null |
Examples
Submit
Methods
JavaScript API methods for this object. You can write JavaScript almost anywhere in Retool and use methods to manipulate data and property values.
listbox.clearValidation()
Examples
Clear the validation message from listbox
.
listbox.clearValidation();
listbox.clearValue()
Examples
Clear the current value of listbox
.
listbox.clearValue();
listbox.focus()
Examples
Set focus on listbox
.
listbox.focus();
listbox.resetValue()
Examples
Reset the current value of listbox
.
listbox.resetValue();
listbox.scrollIntoView()
Scrolls the canvas or parent container so that the selected component appears in the visible area.
listbox.scrollIntoView(options)
Parameters
Object Properties
behavior
The scroll behavior.
Type | string | ||||||
Allowed Values |
|
block
The scroll position relative to the component.
Type | string | ||||||||||
Allowed Values |
|
Examples
Scroll the minimum amount to immediately bring listbox
into view.
listbox.scrollIntoView({behavior: 'auto', block: 'nearest'});
listbox.setDisabled()
Set the disabled
value to toggle whether the input field is disabled. Defaults to true
without a parameter.
listbox.setDisabled(disabled)
Parameters
disabled
Whether input, interaction, selection, or triggering is disabled.
Type | boolean |
Format | True/False |
Default |
|
Examples
true
Examples
Disable listbox
.
listbox.setDisabled(true);
Enable listbox
.
listbox.setDisabled(false);
listbox.setHidden()
Set the hidden
value to toggle whether the component is visible. Defaults to true
without a parameter.
listbox.setHidden(hidden)
Parameters
Examples
true
Examples
Hide listbox
.
listbox.setHidden(true);
Unhide listbox
.
listbox.setHidden(false);
listbox.setValue(key, value)
Examples
Set the current value of listbox
to userValue
.
listbox.setValue(userValue);
Events
Events triggered by user interactions. You can configure event handlers in the IDE to trigger queries or other actions in response to events.
Event | Description |
---|---|
Change | The value is changed. |