Class Form


@Bean(typeName="form") public class Form extends HtmlElementMixed
DTO for an HTML <form> element.

The form element represents a document section containing interactive controls for submitting information to a web server. It groups form controls together and defines how the data should be submitted, including the target URL, HTTP method, and encoding type.

Examples:

// Simple contact form Form form1 = form() .action("/contact") .method("post") .children( input("text").name("name").placeholder("Your Name"), input("email").name("email").placeholder("Your Email"), textarea().name("message").placeholder("Your Message"), button().type("submit").text("Send Message") ); // File upload form Form form2 = form() .action("/upload") .method("post") .enctype("multipart/form-data") .children( input("file").name("file").accept("image/*"), button().type("submit").text("Upload") ); // Form with validation Form form3 = form() .action("/register") .method("post") .novalidate(false) .children( input("email").name("email").required(true), input("password").name("password").required(true), button().type("submit").text("Register") );

The following convenience methods are provided for constructing instances of this bean:

See Also:
  • Constructor Details

  • Method Details

    • acceptcharset

      public Form acceptcharset(String value)
      accept-charset attribute.

      Specifies the character encodings that are accepted for form submission. Multiple encodings can be specified as a space-separated list.

      Common values:

      • "UTF-8" - Unicode UTF-8 encoding (default)
      • "ISO-8859-1" - Latin-1 encoding
      • "UTF-8 ISO-8859-1" - Multiple encodings
      Parameters:
      acceptcharset - The character encodings accepted for form submission.
      Returns:
      This object.
    • action

      public Form action(String value)
      action attribute.

      URL to use for form submission.

      The value can be of any of the following types: URI, URL, String. Strings must be valid URIs.

      URIs defined by UriResolver can be used for values.

      Parameters:
      action - The new value for this attribute.
      Returns:
      This object.
    • autocomplete

      public Form autocomplete(String value)
      autocomplete attribute.

      Sets the default autocomplete behavior for all form controls within this form. Individual controls can override this setting.

      Possible values:

      • "on" - Allow autocomplete (default)
      • "off" - Disable autocomplete
      Parameters:
      autocomplete - The default autocomplete behavior for form controls.
      Returns:
      This object.
    • enctype

      public Form enctype(String value)
      enctype attribute.

      Specifies how form data should be encoded when submitted to the server.

      Possible values:

      • "application/x-www-form-urlencoded" - Default encoding (default)
      • "multipart/form-data" - Used for file uploads
      • "text/plain" - Plain text encoding
      Parameters:
      enctype - The encoding type for form data submission.
      Returns:
      This object.
    • method

      public Form method(String value)
      method attribute.

      Specifies the HTTP method to use when submitting the form.

      Possible values:

      • "get" - Form data is sent as URL parameters (default)
      • "post" - Form data is sent in the request body
      • "dialog" - Used for forms within dialog elements
      Parameters:
      method - The HTTP method for form submission.
      Returns:
      This object.
    • name

      public Form name(String value)
      name attribute.

      Specifies the name of the form. This name can be used to access the form via the document.forms API and for form submission.

      The name should be unique within the document and should not contain spaces or special characters.

      Parameters:
      name - The name of the form for API access and submission.
      Returns:
      This object.
    • novalidate

      public Form novalidate(Boolean value)
      novalidate attribute.

      Disables form validation, allowing the form to be submitted even if validation fails.

      Parameters:
      novalidate - If true, disables form validation.
      Returns:
      This object.
    • target

      public Form target(String value)
      target attribute.

      Specifies where to display the response after form submission.

      Possible values:

      • "_self" - Load in the same frame (default)
      • "_blank" - Load in a new window or tab
      • "_parent" - Load in the parent frame
      • "_top" - Load in the full body of the window
      • Frame name - Load in the named frame
      Parameters:
      target - Where to display the form submission response.
      Returns:
      This object.
    • _class

      public Form _class(String value)
      Description copied from class: HtmlElement
      class attribute.

      Specifies one or more CSS class names for the element, separated by spaces. These classes can be used for styling and JavaScript selection.

      Overrides:
      _class in class HtmlElementMixed
      Returns:
      This object.
    • accesskey

      public Form accesskey(String value)
      Description copied from class: HtmlElement
      accesskey attribute.

      Defines a keyboard shortcut to activate or focus an element. The value should be a single character that, when pressed with a modifier key (usually Alt), activates the element.

      Overrides:
      accesskey in class HtmlElementMixed
      Returns:
      This object.
    • contenteditable

      public Form contenteditable(Object value)
      Description copied from class: HtmlElement
      contenteditable attribute.

      Indicates whether the element's content is editable by the user.

      Possible values:

      • "true" or empty string - Element content is editable
      • "false" - Element content is not editable
      • "plaintext-only" - Element content is editable, but rich text formatting is disabled
      Overrides:
      contenteditable in class HtmlElementMixed
      Returns:
      This object.
    • dir

      public Form dir(String value)
      Description copied from class: HtmlElement
      dir attribute.

      Specifies the text direction of the element's content.

      Possible values:

      • "ltr" - Left-to-right text direction
      • "rtl" - Right-to-left text direction
      • "auto" - Browser determines direction based on content
      Overrides:
      dir in class HtmlElementMixed
      Returns:
      This object.
    • hidden

      public Form hidden(Object value)
      Description copied from class: HtmlElement
      hidden attribute.

      This attribute uses deminimized values:

      • false - Attribute is not added
      • true - Attribute is added as "hidden"
      • Other values - Passed through as-is
      Overrides:
      hidden in class HtmlElementMixed
      Returns:
      This object.
    • id

      public Form id(String value)
      Description copied from class: HtmlElement
      id attribute.

      Specifies a unique identifier for the element. The ID must be unique within the document and can be used for CSS styling, JavaScript selection, and anchor links.

      Overrides:
      id in class HtmlElementMixed
      Returns:
      This object.
    • lang

      public Form lang(String value)
      Description copied from class: HtmlElement
      lang attribute.

      Specifies the primary language of the element's content using a language tag. This helps with accessibility, search engines, and browser features like spell checking.

      Overrides:
      lang in class HtmlElementMixed
      Returns:
      This object.
    • onabort

      public Form onabort(String value)
      Description copied from class: HtmlElement
      onabort attribute.

      Event handler for when an operation is aborted (e.g., image loading is cancelled).

      Overrides:
      onabort in class HtmlElementMixed
      Returns:
      This object.
    • onblur

      public Form onblur(String value)
      Description copied from class: HtmlElement
      onblur attribute.

      Event handler for when the element loses focus.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onblur("validate(\"email\")")
      • If using double quotes for attributes: onblur("validate('email')")
      Overrides:
      onblur in class HtmlElementMixed
      Returns:
      This object.
    • oncancel

      public Form oncancel(String value)
      Description copied from class: HtmlElement
      oncancel attribute.

      Event handler for when a dialog is cancelled.

      Overrides:
      oncancel in class HtmlElementMixed
      Returns:
      This object.
    • oncanplay

      public Form oncanplay(String value)
      Description copied from class: HtmlElement
      oncanplay attribute.

      Event handler for when the media can start playing (enough data has been buffered).

      Overrides:
      oncanplay in class HtmlElementMixed
      Returns:
      This object.
    • oncanplaythrough

      public Form oncanplaythrough(String value)
      Description copied from class: HtmlElement
      oncanplaythrough attribute.

      Event handler for when the media can play through to the end without buffering.

      Overrides:
      oncanplaythrough in class HtmlElementMixed
      Returns:
      This object.
    • onchange

      public Form onchange(String value)
      Description copied from class: HtmlElement
      onchange attribute.

      Event handler for when the value of a form element changes and loses focus.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onchange("validate(\"field\")")
      • If using double quotes for attributes: onchange("validate('field')")
      Overrides:
      onchange in class HtmlElementMixed
      Returns:
      This object.
    • onclick

      public Form onclick(String value)
      Description copied from class: HtmlElement
      onclick attribute.

      Event handler for when the element is clicked.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onclick("alert(\"Hello\")")
      • If using double quotes for attributes: onclick("alert('Hello')")
      Overrides:
      onclick in class HtmlElementMixed
      Returns:
      This object.
    • oncuechange

      public Form oncuechange(String value)
      Description copied from class: HtmlElement
      oncuechange attribute.

      Event handler for when a text track cue changes.

      Overrides:
      oncuechange in class HtmlElementMixed
      Returns:
      This object.
    • ondblclick

      public Form ondblclick(String value)
      Description copied from class: HtmlElement
      ondblclick attribute.

      Event handler for when the element is double-clicked.

      Overrides:
      ondblclick in class HtmlElementMixed
      Returns:
      This object.
    • ondurationchange

      public Form ondurationchange(String value)
      Description copied from class: HtmlElement
      ondurationchange attribute.

      Event handler for when the duration of the media changes.

      Overrides:
      ondurationchange in class HtmlElementMixed
      Returns:
      This object.
    • onemptied

      public Form onemptied(String value)
      Description copied from class: HtmlElement
      onemptied attribute.

      Event handler for when the media element becomes empty (e.g., network error).

      Overrides:
      onemptied in class HtmlElementMixed
      Returns:
      This object.
    • onended

      public Form onended(String value)
      Description copied from class: HtmlElement
      onended attribute.

      Event handler for when the media playback reaches the end.

      Overrides:
      onended in class HtmlElementMixed
      Returns:
      This object.
    • onerror

      public Form onerror(String value)
      Description copied from class: HtmlElement
      onerror attribute.

      Event handler for when an error occurs (e.g., failed resource loading).

      Overrides:
      onerror in class HtmlElementMixed
      Returns:
      This object.
    • onfocus

      public Form onfocus(String value)
      Description copied from class: HtmlElement
      onfocus attribute.

      Event handler for when the element receives focus.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onfocus("highlight(\"field\")")
      • If using double quotes for attributes: onfocus("highlight('field')")
      Overrides:
      onfocus in class HtmlElementMixed
      Returns:
      This object.
    • oninput

      public Form oninput(String value)
      Description copied from class: HtmlElement
      oninput attribute.

      Event handler for when the value of an input element changes (fires on every keystroke).

      Overrides:
      oninput in class HtmlElementMixed
      Returns:
      This object.
    • oninvalid

      public Form oninvalid(String value)
      Description copied from class: HtmlElement
      oninvalid attribute.

      Event handler for when form validation fails.

      Overrides:
      oninvalid in class HtmlElementMixed
      Returns:
      This object.
    • onkeydown

      public Form onkeydown(String value)
      Description copied from class: HtmlElement
      onkeydown attribute.

      Event handler for when a key is pressed down.

      Overrides:
      onkeydown in class HtmlElementMixed
      Returns:
      This object.
    • onkeypress

      public Form onkeypress(String value)
      Description copied from class: HtmlElement
      onkeypress attribute.

      Event handler for when a key is pressed (deprecated, use onkeydown instead).

      Overrides:
      onkeypress in class HtmlElementMixed
      Returns:
      This object.
    • onkeyup

      public Form onkeyup(String value)
      Description copied from class: HtmlElement
      onkeyup attribute.

      Event handler for when a key is released.

      Overrides:
      onkeyup in class HtmlElementMixed
      Returns:
      This object.
    • onload

      public Form onload(String value)
      Description copied from class: HtmlElement
      onload attribute.

      Event handler for when the element and its resources have finished loading.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onload("init(\"config\")")
      • If using double quotes for attributes: onload("init('config')")
      Overrides:
      onload in class HtmlElementMixed
      Returns:
      This object.
    • onloadeddata

      public Form onloadeddata(String value)
      Description copied from class: HtmlElement
      onloadeddata attribute.

      Event handler for when the first frame of media has finished loading.

      Overrides:
      onloadeddata in class HtmlElementMixed
      Returns:
      This object.
    • onloadedmetadata

      public Form onloadedmetadata(String value)
      Description copied from class: HtmlElement
      onloadedmetadata attribute.

      Event handler for when metadata (duration, dimensions, etc.) has been loaded.

      Overrides:
      onloadedmetadata in class HtmlElementMixed
      Returns:
      This object.
    • onloadstart

      public Form onloadstart(String value)
      Description copied from class: HtmlElement
      onloadstart attribute.

      Event handler for when the browser starts loading the media.

      Overrides:
      onloadstart in class HtmlElementMixed
      Returns:
      This object.
    • onmousedown

      public Form onmousedown(String value)
      Description copied from class: HtmlElement
      onmousedown attribute.

      Event handler for when a mouse button is pressed down on the element.

      Overrides:
      onmousedown in class HtmlElementMixed
      Returns:
      This object.
    • onmouseenter

      public Form onmouseenter(String value)
      Description copied from class: HtmlElement
      onmouseenter attribute.

      Event handler for when the mouse pointer enters the element (does not bubble).

      Overrides:
      onmouseenter in class HtmlElementMixed
      Returns:
      This object.
    • onmouseleave

      public Form onmouseleave(String value)
      Description copied from class: HtmlElement
      onmouseleave attribute.

      Event handler for when the mouse pointer leaves the element (does not bubble).

      Overrides:
      onmouseleave in class HtmlElementMixed
      Returns:
      This object.
    • onmousemove

      public Form onmousemove(String value)
      Description copied from class: HtmlElement
      onmousemove attribute.

      Event handler for when the mouse pointer moves over the element.

      Overrides:
      onmousemove in class HtmlElementMixed
      Returns:
      This object.
    • onmouseout

      public Form onmouseout(String value)
      Description copied from class: HtmlElement
      onmouseout attribute.

      Event handler for when the mouse pointer moves out of the element (bubbles).

      Overrides:
      onmouseout in class HtmlElementMixed
      Returns:
      This object.
    • onmouseover

      public Form onmouseover(String value)
      Description copied from class: HtmlElement
      onmouseover attribute.

      Event handler for when the mouse pointer moves over the element (bubbles).

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onmouseover("showTooltip(\"info\")")
      • If using double quotes for attributes: onmouseover("showTooltip('info')")
      Overrides:
      onmouseover in class HtmlElementMixed
      Returns:
      This object.
    • onmouseup

      public Form onmouseup(String value)
      Description copied from class: HtmlElement
      onmouseup attribute.

      Event handler for when a mouse button is released over the element.

      Overrides:
      onmouseup in class HtmlElementMixed
      Returns:
      This object.
    • onmousewheel

      public Form onmousewheel(String value)
      Description copied from class: HtmlElement
      onmousewheel attribute.

      Event handler for when the mouse wheel is rotated over the element (deprecated, use onwheel).

      Overrides:
      onmousewheel in class HtmlElementMixed
      Returns:
      This object.
    • onpause

      public Form onpause(String value)
      Description copied from class: HtmlElement
      onpause attribute.

      Event handler for when media playback is paused.

      Overrides:
      onpause in class HtmlElementMixed
      Returns:
      This object.
    • onplay

      public Form onplay(String value)
      Description copied from class: HtmlElement
      onplay attribute.

      Event handler for when media playback starts.

      Overrides:
      onplay in class HtmlElementMixed
      Returns:
      This object.
    • onplaying

      public Form onplaying(String value)
      Description copied from class: HtmlElement
      onplaying attribute.

      Event handler for when media playback starts after being paused or delayed.

      Overrides:
      onplaying in class HtmlElementMixed
      Returns:
      This object.
    • onprogress

      public Form onprogress(String value)
      Description copied from class: HtmlElement
      onprogress attribute.

      Event handler for when the browser is downloading media data.

      Overrides:
      onprogress in class HtmlElementMixed
      Returns:
      This object.
    • onratechange

      public Form onratechange(String value)
      Description copied from class: HtmlElement
      onratechange attribute.

      Event handler for when the playback rate of media changes.

      Overrides:
      onratechange in class HtmlElementMixed
      Returns:
      This object.
    • onreset

      public Form onreset(String value)
      Description copied from class: HtmlElement
      onreset attribute.

      Event handler for when a form is reset.

      Overrides:
      onreset in class HtmlElementMixed
      Returns:
      This object.
    • onresize

      public Form onresize(String value)
      Description copied from class: HtmlElement
      onresize attribute.

      Event handler for when the element is resized.

      Overrides:
      onresize in class HtmlElementMixed
      Returns:
      This object.
    • onscroll

      public Form onscroll(String value)
      Description copied from class: HtmlElement
      onscroll attribute.

      Event handler for when the element's scrollbar is scrolled.

      Overrides:
      onscroll in class HtmlElementMixed
      Returns:
      This object.
    • onseeked

      public Form onseeked(String value)
      Description copied from class: HtmlElement
      onseeked attribute.

      Event handler for when a seek operation completes.

      Overrides:
      onseeked in class HtmlElementMixed
      Returns:
      This object.
    • onseeking

      public Form onseeking(String value)
      Description copied from class: HtmlElement
      onseeking attribute.

      Event handler for when a seek operation begins.

      Overrides:
      onseeking in class HtmlElementMixed
      Returns:
      This object.
    • onselect

      public Form onselect(String value)
      Description copied from class: HtmlElement
      onselect attribute.

      Event handler for when text is selected in the element.

      Overrides:
      onselect in class HtmlElementMixed
      Returns:
      This object.
    • onshow

      public Form onshow(String value)
      Description copied from class: HtmlElement
      onshow attribute.

      Event handler for when a context menu is shown.

      Overrides:
      onshow in class HtmlElementMixed
      Returns:
      This object.
    • onstalled

      public Form onstalled(String value)
      Description copied from class: HtmlElement
      onstalled attribute.

      Event handler for when media loading is stalled.

      Overrides:
      onstalled in class HtmlElementMixed
      Returns:
      This object.
    • onsubmit

      public Form onsubmit(String value)
      Description copied from class: HtmlElement
      onsubmit attribute.

      Event handler for when a form is submitted.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onsubmit("return validate(\"form\")")
      • If using double quotes for attributes: onsubmit("return validate('form')")
      Overrides:
      onsubmit in class HtmlElementMixed
      Returns:
      This object.
    • onsuspend

      public Form onsuspend(String value)
      Description copied from class: HtmlElement
      onsuspend attribute.

      Event handler for when media loading is suspended.

      Overrides:
      onsuspend in class HtmlElementMixed
      Returns:
      This object.
    • ontimeupdate

      public Form ontimeupdate(String value)
      Description copied from class: HtmlElement
      ontimeupdate attribute.

      Event handler for when the current playback position changes.

      Overrides:
      ontimeupdate in class HtmlElementMixed
      Returns:
      This object.
    • ontoggle

      public Form ontoggle(String value)
      Description copied from class: HtmlElement
      ontoggle attribute.

      Event handler for when a details element is opened or closed.

      Overrides:
      ontoggle in class HtmlElementMixed
      Returns:
      This object.
    • onvolumechange

      public Form onvolumechange(String value)
      Description copied from class: HtmlElement
      onvolumechange attribute.

      Event handler for when the volume of media changes.

      Overrides:
      onvolumechange in class HtmlElementMixed
      Returns:
      This object.
    • onwaiting

      public Form onwaiting(String value)
      Description copied from class: HtmlElement
      onwaiting attribute.

      Event handler for when media playback stops to buffer more data.

      Overrides:
      onwaiting in class HtmlElementMixed
      Returns:
      This object.
    • spellcheck

      public Form spellcheck(Object value)
      Description copied from class: HtmlElement
      spellcheck attribute.

      Indicates whether the element should have its spelling and grammar checked.

      Possible values:

      • "true" - Enable spell checking for this element
      • "false" - Disable spell checking for this element
      Overrides:
      spellcheck in class HtmlElementMixed
      Returns:
      This object.
    • style

      public Form style(String value)
      Description copied from class: HtmlElement
      style attribute.

      Specifies inline CSS styles for the element. The value should be valid CSS property-value pairs separated by semicolons.

      Overrides:
      style in class HtmlElementMixed
      Returns:
      This object.
    • tabindex

      public Form tabindex(Object value)
      Description copied from class: HtmlElement
      tabindex attribute.

      Specifies the tab order of the element when navigating with the keyboard.

      Possible values:

      • Positive integer - Element is focusable and participates in tab order
      • "0" - Element is focusable but not in tab order
      • Negative integer - Element is not focusable
      Overrides:
      tabindex in class HtmlElementMixed
      Returns:
      This object.
    • title

      public Form title(String value)
      Description copied from class: HtmlElement
      title attribute.

      Specifies additional information about the element, typically displayed as a tooltip when the user hovers over the element.

      Overrides:
      title in class HtmlElementMixed
      Returns:
      This object.
    • translate

      public Form translate(Object value)
      Description copied from class: HtmlElement
      translate attribute.

      Specifies whether the element's content should be translated when the page is localized.

      Possible values:

      • "yes" - Content should be translated (default)
      • "no" - Content should not be translated
      Overrides:
      translate in class HtmlElementMixed
      Returns:
      This object.
    • child

      public Form child(Object value)
      Description copied from class: HtmlElementMixed
      Adds a child element to this element.
      Overrides:
      child in class HtmlElementMixed
      Returns:
      This object.
    • children

      public Form children(Object... value)
      Description copied from class: HtmlElementMixed
      Adds one or more child elements to this element.
      Overrides:
      children in class HtmlElementMixed
      Returns:
      This object.