Skip to main content

The Multiselect component for Retool Apps

An input field to select multiple options using a dropdown menu or manually enter values.

Refer to the selection input guide for more information on using this component.

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

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


Examples
/icon:bold/shopping-gift

Examples
/icon:bold/shopping-gift

id

The unique identifier (name).

Type string
Format Plain Text
Configurability Inspector
Defaultmultiselect1
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

maxCount

The maximum number of items to allow.

Type number
Configurability Inspector
Defaultnull

maxLines

The maximum number of lines to show.

Type number
Configurability Inspector
Defaultnull

minCount

The minimum number of items to allow.

Type number
Configurability Inspector
Defaultnull


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

persistSearchTerm

Whether to persist the search term after making a selection.

Type array
Array values boolean
Configurability Inspector
Defaultnull

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

selectedIndexes

A list of selected values, by index.

Type array
Array values number
Configurability Read-only
Defaultnull

selectedItems

A list of selected items.

Type array
Configurability Read-only
Default[]
Examples
[{"id": "1", "name": "Item 1"}, {"id": "2", "name": "Item 2"}]

selectedLabels

A list of labels for selected values, by index.

Type array
Array values string
Configurability Read-only
Defaultnull

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

Examples
USD
px
@example.com

Examples
$
Email address
SKU

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

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

values

A list of possible values from which to select.

Type array
Configurability Read-only
Defaultnull

wrapTags

Whether to wrap selected tags.

Type array
Array values boolean
Configurability Inspector
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.

multiselect.clearValidation()

Clear the validation message from the input field.

Definition
multiselect.clearValidation()
Examples

Clear the validation message from multiselect.

multiselect.clearValidation();

multiselect.clearValue()

Clear the current values.

Definition
multiselect.clearValue()
Examples

Clear the current value of multiselect.

multiselect.clearValue();

multiselect.focus()

Set focus on the input field.

Definition
multiselect.focus()
Examples

Set focus on multiselect.

multiselect.focus();

multiselect.resetValue()

Reset the current value to the default value.

Definition
multiselect.resetValue()
Examples

Reset the current value of multiselect.

multiselect.resetValue();

multiselect.setDisabled()

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

Definition
multiselect.setDisabled(disabled)
Parameters

disabled

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

Type boolean
Format True/False
Default
false
Examples
true

Examples

Disable multiselect.

multiselect.setDisabled(true);

Enable multiselect.

multiselect.setDisabled(false);

multiselect.setHidden()

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

Definition
multiselect.setHidden(hidden)
Parameters

hidden

Whether this object is hidden from view.

Type boolean
Format True/False
Default
false
Examples
true

Examples

Hide multiselect.

multiselect.setHidden(true);

Unhide multiselect.

multiselect.setHidden(false);

multiselect.setValue()

Set the current value.

Definition
multiselect.setValue(key, value)
Parameters

key

The key.

Type string

value

The value.

Type string | number | boolean | object | array

Examples

Set the current value of multiselect to userValue.

multiselect.setValue(userValue);

multiselect.validate()

Validates the value of the input field.

Definition
multiselect.validate()
Examples

Validate the value of multiselect.

multiselect.validate();

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
ChangeThe value is changed.