# `htmlForm`

## Reference & Documentation

A `Form` component. `Form` is a wrapper for the <form> HTML5 element. For detailed attribute info see: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form

> Our recommended IDE for writing Dash apps is Dash Enterprise's Data Science Workspaces, which has typeahead support for Dash Component Properties. Find out if your company is using Dash Enterprise.

`children` (Array of or a singular dash component, String or Real; optional): The children of this component.

`id` (String; optional): The ID of this component, used to identify dash components in callbacks. The ID needs to be unique across all of the components in an app.

`n_clicks` (Real; default `0`): An integer that represents the number of times that this element has been clicked on.

`n_clicks_timestamp` (Real; default `-1`): An integer that represents the time (in ms since 1970) at which n_clicks changed. This can be used to tell which button was changed most recently.

`disable_n_clicks` (Bool; optional): When True, this will disable the n_clicks prop. Use this to remove event listeners that may interfere with screen readers.

`key` (String; optional): A unique identifier for the component, used to improve performance by React.js while rendering components See https://reactjs.org/docs/lists-and-keys.html for more info.

`accept` (String; optional): List of types the server accepts, typically a file type.

`acceptCharset` (String; optional): List of supported charsets.

`action` (String; optional): The URI of a program that processes the information submitted via the form.

`autoComplete` (String; optional): Indicates whether controls in this form can by default have their values automatically completed by the browser.

`encType` (String; optional): Defines the content type of the form data when the method is POST.

`method` (String; optional): Defines which HTTP method to use when submitting the form. Can be GET (default) or POST.

`name` (String; optional): Name of the element. For example used by the server to identify the fields in form submits.

`noValidate` (a value equal to: 'noValidate', 'novalidate' or 'NOVALIDATE' | Bool; optional): This attribute indicates that the form shouldn't be validated when submitted.

`target` (String; optional): Specifies where to open the linked document (in the case of an <a> element) or where to display the response received (in the case of a

<form> element).

`accessKey` (String; optional): Keyboard shortcut to activate or add focus to the element.

`className` (String; optional): Often used with CSS to style elements with common properties.

`contentEditable` (String; optional): Indicates whether the element's content is editable.

`dir` (String; optional): Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl (Right-To-Left).

`draggable` (String; optional): Defines whether the element can be dragged.

`hidden` (a value equal to: 'hidden' or 'HIDDEN' | Bool; optional): Prevents rendering of given element, while keeping child elements, e.g. script elements, active.

`lang` (String; optional): Defines the language used in the element.

`role` (String; optional): Defines an explicit role for an element for use by assistive technologies.

`spellCheck` (String; optional): Indicates whether spell checking is allowed for the element.

`style` (Dict; optional): Defines CSS styles which will override styles previously set.

`tabIndex` (String | Real; optional): Overrides the browser's default tab order and follows the one specified instead.

`title` (String; optional): Text to be displayed in a tooltip when hovering over the element.

`loading_state` (Dict; optional): Object that holds the loading state object coming from dash-renderer.

`loading_state` is a Dict with keys:

- `component_name` (String; optional): Holds the name of the component that is loading.

- `is_loading` (Bool; optional): Determines if the component is loading or not.

- `prop_name` (String; optional): Holds which property is loading.