Class FormElement

  • All Implemented Interfaces:
    Cloneable

    public class FormElement
    extends Element
    A HTML Form Element provides ready access to the form fields/controls that are associated with it. It also allows a form to easily be submitted.
    • Constructor Detail

      • FormElement

        public FormElement​(Tag tag,
                           String baseUri,
                           Attributes attributes)
        Create a new, standalone form element.
        Parameters:
        tag - tag of this element
        baseUri - the base URI
        attributes - initial attributes
    • Method Detail

      • elements

        public Elements elements()
        Get the list of form control elements associated with this form.
        Returns:
        form controls associated with this element.
      • addElement

        public FormElement addElement​(Element element)
        Add a form control element to this form.
        Parameters:
        element - form control to add
        Returns:
        this form element, for chaining
      • removeChild

        protected void removeChild​(Node out)
        Overrides:
        removeChild in class Node
      • submit

        public Connection submit()
        Prepare to submit this form. A Connection object is created with the request set up from the form values. You can then set up other options (like user-agent, timeout, cookies), then execute it.
        Returns:
        a connection prepared from the values of this form.
        Throws:
        IllegalArgumentException - if the form's absolute action URL cannot be determined. Make sure you pass the document's base URI when parsing.
      • formData

        public List<Connection.KeyVal> formData()
        Get the data that this form submits. The returned list is a copy of the data, and changes to the contents of the list will not be reflected in the DOM.
        Returns:
        a list of key vals
      • clone

        public FormElement clone()
        Description copied from class: Node
        Create a stand-alone, deep copy of this node, and all of its children. The cloned node will have no siblings or parent node. As a stand-alone object, any changes made to the clone or any of its children will not impact the original node.

        The cloned node may be adopted into another Document or node structure using Element.appendChild(Node).

        Overrides:
        clone in class Element
        Returns:
        a stand-alone cloned node, including clones of any children
        See Also:
        Node.shallowClone()