For AI agents: the complete documentation index is at llms.txt. Markdown versions are available by appending .md or sending Accept: text/markdown.
Reflex Logo
Docs Logo
Library

/

Overlay

/

Dialog

Dialog

The dialog.root contains all the parts of a dialog.

The dialog.trigger wraps the control that will open the dialog.

The dialog.content contains the content of the dialog.

The dialog.title is a title that is announced when the dialog is opened.

The dialog.description is a description that is announced when the dialog is opened.

The dialog.close wraps the control that will close the dialog.

In context examples

Expand
Expand

Events when the Dialog opens or closes

The on_open_change event is called when the open state of the dialog changes. It is used in conjunction with the open prop, which is passed to the event handler.

Number of times dialog opened or closed: 0

Dialog open: false

Expand

Check out the menu docs for an example of opening a dialog from within a dropdown menu.

Form Submission to a Database from a Dialog

This example adds new users to a database from a dialog using a form.

  1. It defines a User model with name and email fields.
  2. The add_user_to_db method adds a new user to the database, checking for existing emails.
  3. On form submission, it calls the add_user_to_db method.
  4. The UI component has:
  • A button to open a dialog
  • A dialog containing a form to add a new user
  • Input fields for name and email
  • Submit and Cancel buttons
Expand

API Reference

rx.dialog.root

Root component for Dialog.

Props

PropTypeDescription
open
bool

The controlled open state of the dialog.

default_open
bool

The open state of the dialog when it is initially rendered. Use when you do not need to control its open state.

Event Triggers

See the full list of default event triggers
TriggerDescription
on_open_changeFired when the open state changes.

rx.dialog.trigger

Trigger an action or event, to open a Dialog modal.

Props

No component specific props

rx.dialog.title

Title component to display inside a Dialog modal.

Props

No component specific props

rx.dialog.content

Content component to display inside a Dialog modal.

rx.dialog.root(
rx.dialog.trigger(rx.button("Open Dialog")),
rx.dialog.content(
rx.dialog.title("Welcome to Reflex!"),
rx.dialog.description(
"This is a dialog component. You can render anything you want in here.",
),
rx.dialog.close(
rx.button("Close Dialog"),
),
size="1",
),
)
size

Props

PropTypeDescription
access_key
str

Provides a hint for generating a keyboard shortcut for the current element.

auto_capitalize
"off""none""on""sentences""words""characters"

Controls whether and how text input is automatically capitalized as it is entered/edited by the user.

content_editable
"inherit""plaintext-only"

Indicates whether the element's content is editable.

context_menu
str

Defines the ID of a <menu> element which will serve as the element's context menu.

dir
str

Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl (Right-To-Left).

draggable
bool

Defines whether the element can be dragged.

enter_key_hint
"enter""done""go""next""previous""search""send"

Hints what media types the media element is able to play.

hidden
bool

Defines whether the element is hidden.

input_mode
"none""text""tel""url""email""numeric""decimal""search"

Defines the type of the element.

item_prop
str

Defines the name of the element for metadata purposes.

lang
str

Defines the language used in the element.

role
"alert""alertdialog""application""article""banner""button""cell""checkbox""columnheader""combobox""complementary""contentinfo""definition""dialog""directory""document""feed""figure""form""grid""gridcell""group""heading""img""link""list""listbox""listitem""log""main""marquee""math""menu""menubar""menuitem""menuitemcheckbox""menuitemradio""navigation""none""note""option""presentation""progressbar""radio""radiogroup""region""row""rowgroup""rowheader""scrollbar""search""searchbox""separator""slider""spinbutton""status""switch""tab""table""tablist""tabpanel""term""textbox""timer""toolbar""tooltip""tree""treegrid""treeitem"

Defines the role of the element.

slot
str

Assigns a slot in a shadow DOM shadow tree to an element.

spell_check
bool

Defines whether the element may be checked for spelling errors.

tab_index
int

Defines the position of the current element in the tabbing order.

title
str

Defines a tooltip for the element.

size
"1""2""3""4"

DialogContent size "1" - "4".

Event Triggers

See the full list of default event triggers
TriggerDescription
on_open_auto_focusFired when the dialog is opened.
on_close_auto_focusFired when the dialog is closed.
on_escape_key_downFired when the escape key is pressed.
on_pointer_down_outsideFired when the pointer is down outside the dialog.
on_interact_outsideFired when the pointer interacts outside the dialog.

rx.dialog.description

Description component to display inside a Dialog modal.

Props

No component specific props

rx.dialog.close

Close button component to close an open Dialog modal.

Props

No component specific props

Built with Reflex