Skip to main content

The Button component for Retool Apps

A button to trigger actions when clicked.

For more information about using the Button component, refer to the buttons and links guide.

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.

allowWrap

Whether content can wrap to multiple lines.

Type boolean
Format True/False
Configurability Inspector > Appearance > Wrap text
Default
true
Examples
true

ariaLabel

The accessible label for screen readers.

Type string
Format Plain Text
Configurability Inspector > Content > Accessible name
Default
null
Examples
"Retool logo."

clickable

Whether there is an enabled Click event handler.

Type boolean
Format True/False
Configurability Inspector > Interaction > Event handlers
Default
false
Examples
true

disabled

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

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

events

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

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

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

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



heightType

Whether the height automatically adjusts to fit content or is a fixed size.

Type string
Format Plain Text
Configurability Inspector > Spacing > Height
Allowed Values
ValueDescription
fixed

Fixed height.

auto

Expand to fit content.

Default
fixed

hidden

Whether this object is hidden from view.

Type boolean
Format True/False
Configurability Inspector > Appearance > Hidden
Default
false
Examples
true

horizontalAlign

Horizontal alignment of the button.

Type string
Format Plain Text
Configurability Inspector > Appearance > Align
Allowed Values
ValueDescription
left

Left alignment.

center

Center alignment.

right

Right alignment.

stretch

Stretch to fit.

Default
left
Examples
"center"

Examples
/icon:bold/shopping-gift

Examples
/icon:bold/shopping-gift

id

The unique identifier (name).

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

loaderPosition

The position of the loading indicator if loading is true.

Type string
Configurability Inspector > Interaction > Loader position
Allowed Values
ValueDescription
auto

Position automatically.

replace

Replace the text.

left

Left of text.

right

Right of text.

Default
auto

loading

Whether to display a loading indicator.

Type boolean
Format True/False
Configurability Inspector > Interaction > Loading
Default
false
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
Default
false
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.

Default
4px 8px
Examples
4px 8px

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

style

Custom style options.

Type object
Configurability Inspector > Appearance > style

styleVariant

The style variant to use.

Type string
Format Plain Text
Configurability Inspector > Appearance > Variant
Allowed Values
ValueDescription
solid

Solid style.

outline

Outline style.

Default
solid
Examples
solid

submit

Whether to submit using the submitTargetId property when clicked.

Type boolean
Format True/False
Configurability Inspector > Interaction > Type
Default
false
Examples
true

submitTargetId

The form to submit when the submit property is true.

Type string
Format Retool object name
Configurability Read-only
Default
null
Examples
form1

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.

button.setDisabled()

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

Definition
button.setDisabled(disabled)
Parameters

disabled

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

Type boolean
Format True/False
Default
false
Examples
true

Examples

Disable button.

button.setDisabled(true);

Enable button.

button.setDisabled(false);

button.setHidden()

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

Definition
button.setHidden(hidden)
Parameters

hidden

Whether this object is hidden from view.

Type boolean
Format True/False
Default
false
Examples
true

Examples

Hide button.

button.setHidden(true);

Unhide button.

button.setHidden(false);

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
ClickAn item is clicked or pressed.