Skip to main content

The Select component for Retool Apps

An input field to select an option using a dropdown menu or manually enter a value.

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.

allowCustomValue

Whether to allow values that do not exist in values.

Type boolean
Format True/False
Configurability Inspector
Defaultfalse
Examples
true

allowDeselect

Whether to allow deselection of an item.

Type boolean
Format True/False
Configurability Inspector
Defaultfalse
Examples
true

clearInputValueOnChange

Whether to clear the input value when the selection changes.

Type boolean
Configurability Inspector
Defaultnull

deprecatedLabels

A list of labels (deprecated).

Type array
Array values string
Configurability Read-only
Defaultnull

disabled

Whether input, interaction, selection, or triggering is disabled.

Type boolean
Format True/False
Configurability Inspector > Interaction > Disabled
Defaultfalse
Examples
true

disabledValues

A list of values not available for selection.

Type array
Array values boolean
Configurability Read-only
Defaultnull

emptyMessage

The message to display if no value is set.

Type string
Configurability Inspector > Appearance > Empty state
Defaultnull

events

A list of configured event handlers that trigger actions or queries.

Type array
Array values object
Configurability Inspector > Interaction > Event handlers
Defaultnull
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
Defaultnull

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
Defaultnull

type

The type of action to perform.

Type string
Configurability Inspector > Interaction > Event handlers > Edit event handler > Action
Allowed Values
ValueDescription
datasource

Control query.

widget

Control component.

script

Run script.

state

Set variable.

localStorage

Set localStorage.

util

Perform utility action (e.g., Open URL or Confetti).

Defaultnull


id

The unique identifier (name).

Type string
Format Plain Text
Configurability Inspector
Defaultselect1
Examples
query1
button1

inputValue

The default or most recently entered value.

Type string
Configurability Read-only
Defaultnull

isHiddenOnDesktop

Whether to show or hide this object in the desktop layout.

Type boolean
Format True/False
Configurability Inspector > Appearance > Advanced > Show on desktop
Defaultfalse
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
Defaulttrue
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
ValueUI OptionDescription
topTop

Above the input field or value.

leftLeft

Left of the input field or value.

Defaultleft
Examples
top

loading

Whether to display a loading indicator.

Type boolean
Format True/False
Configurability Inspector > Interaction > Loading
Defaultfalse
Examples
true

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
Defaultfalse
Examples
true

margin

The amount of margin to render outside.

Type string
Format Plain Text
Configurability Inspector > Spacing > Margin
Allowed Values
ValueUI OptionDescription
4px 8pxNormal

Normal margin.

0None

No margin.

Default4px 8px
Examples
4px 8px

overlayMaxHeight

The maximum height of the options list, in pixels.

Type number
Format Integer
Configurability Inspector > Appearance > Advanced > Max list height
Defaultnull
Examples
200

overlayMinWidth

The minimum width of the options list, in pixels.

Type number
Format Integer
Configurability Inspector > Appearance > Advanced > Min list width
Defaultnull
Examples
200

placeholder

The text to display within the input field when there is no value.

Type string
Formatstring
Configurability Inspector > Content > Placeholder
DefaultEnter a value
Examples
Enter a value

Examples
true

Examples
true

searchMode

The type of search to perform.

Type string
Configurability Inspector
Allowed Values
ValueDescription
fuzzy

Searches using fuzzy logic.

caseInsensitive

Ignores the case used in search terms.

caseSensitive

Matches the case used in search terms.

Defaultnull

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
Defaultnull
Examples
{"id": "1", "name": "Item 1"}

selectedLabel

The label of the selected value, by index.

Type string
Formatstring
Configurability Read-only
Defaultnull
Examples
Value 1

showClear

Whether to display a button to clear the value of the input field.

Type boolean
Format True/False
Configurability Inspector > Appearance > Show clear button
Defaultfalse
Examples
true

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
Defaultfalse
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
Defaulttrue
Examples
true

style

Custom style options.

Type object
Configurability Inspector > Appearance > style
Defaultnull

tooltipText

The tooltip text to display next to the label on hover.

Type string
Format Markdown
Configurability Inspector > Content > Add-ons > Helper text
Defaultnull
Examples
Submit

value

The current value.

Type string | number | boolean | object | array
Configurability Read-only
Defaultnull

Methods

JavaScript API methods for this object. You can write JavaScript almost anywhere in Retool and use methods to manipulate data and property values.

select.blur()

The input field is deselected.

Definition
select.blur()
Examples

Remove focus from select.

select.blur();

select.clearValidation()

Clear the validation message from the input field.

Definition
select.clearValidation()
Examples

Clear the validation message from select.

select.clearValidation();

select.clearValue()

Clear the current values.

Definition
select.clearValue()
Examples

Clear the current value of select.

select.clearValue();

select.focus()

Set focus on the input field.

Definition
select.focus()
Examples

Set focus on select.

select.focus();

select.resetValue()

Reset the current value to the default value.

Definition
select.resetValue()
Examples

Reset the current value of select.

select.resetValue();

select.scrollIntoView()

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

Definition
select.scrollIntoView(options)
Parameters

options

The scroll options.

Type object
Object Properties

behavior

The scroll behavior.

Type string
Allowed Values
ValueDescription
auto

Scroll immediately to the specified position.

smooth

Scroll gradually to the specified position.


block

The scroll position relative to the component.

Type string
Allowed Values
ValueDescription
nearest

Scrolls only the minimum amount required for the component to appear in the visible area. Scrolling does not occur if the component is already in view.

start

Scrolls to position the component at the top of the visible area.

center

Scrolls to position the component in the middle of the visible area.

end

Scrolls to position the component at the bottom of the visible area.



Examples

Scroll the minimum amount to immediately bring select into view.

select.scrollIntoView({behavior: 'auto', block: 'nearest'});

select.setDisabled()

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

Definition
select.setDisabled(disabled)
Parameters

disabled

Whether input, interaction, selection, or triggering is disabled.

Type boolean
Format True/False
Default
false
Examples
true

Examples

Disable select.

select.setDisabled(true);

Enable select.

select.setDisabled(false);

select.setHidden()

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

Definition
select.setHidden(hidden)
Parameters

hidden

Whether this object is hidden from view.

Type boolean
Format True/False
Default
false
Examples
true

Examples

Hide select.

select.setHidden(true);

Unhide select.

select.setHidden(false);

select.setValue()

Set the current value.

Definition
select.setValue(key, value)
Parameters

key

The key.

Type string

value

The value.

Type string | number | boolean | object | array

Examples

Set the current value of select to userValue.

select.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.

EventDescription
BlurThe input field is deselected.
ChangeThe value is changed.
FocusThe input field is selected.
Input Value ChangeThe input value is changed.