org.springframework.web.servlet.tags.form

## Class ButtonTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - org.springframework.web.servlet.tags.RequestContextAwareTag
    - - org.springframework.web.servlet.tags.HtmlEscapingAwareTag
      - - org.springframework.web.servlet.tags.form.AbstractFormTag
        - - org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag
          - - org.springframework.web.servlet.tags.form.AbstractHtmlElementTag
            - - org.springframework.web.servlet.tags.form.ButtonTag

- All Implemented Interfaces:
    Serializable, DynamicAttributes, IterationTag, JspTag, Tag, TryCatchFinally, EditorAwareTag

      public class ButtonTag
      extends AbstractHtmlElementTag

  The `<button>` tag renders a form field label in an HTML 'button' tag. It is provided for completeness if the application relies on a `RequestDataValueProcessor`.

  Attribute Summary
  Attribute | Required? | Runtime Expression? | Description
  --- | --- | --- | ---
  disabled | false | true | HTML Optional Attribute. Setting the value of this attribute to 'true' will disable the HTML element.
  id | false | true | HTML Standard Attribute
  name | false | true | The name attribute for the HTML button tag
  value | false | true | The name attribute for the HTML button tag

  Since:
    3.1
  Author:
    Rossen Stoyanchev
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `DISABLED_ATTRIBUTE` The name of the '`disabled`' attribute.

    - ### Fields inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag

      `CLASS_ATTRIBUTE, DIR_ATTRIBUTE, LANG_ATTRIBUTE, ONCLICK_ATTRIBUTE, ONDBLCLICK_ATTRIBUTE, ONKEYDOWN_ATTRIBUTE, ONKEYPRESS_ATTRIBUTE, ONKEYUP_ATTRIBUTE, ONMOUSEDOWN_ATTRIBUTE, ONMOUSEMOVE_ATTRIBUTE, ONMOUSEOUT_ATTRIBUTE, ONMOUSEOVER_ATTRIBUTE, ONMOUSEUP_ATTRIBUTE, STYLE_ATTRIBUTE, TABINDEX_ATTRIBUTE, TITLE_ATTRIBUTE`

    - ### Fields inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag

      `NESTED_PATH_VARIABLE_NAME`

    - ### Fields inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag

      `logger, REQUEST_CONTEXT_PAGE_ATTRIBUTE`

    - ### Fields inherited from class javax.servlet.jsp.tagext.TagSupport

      `pageContext`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ButtonTag()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `doEndTag()` Closes the '`button`' block tag.
    `protected String` | `getDefaultValue()` Return the default value.
    `String` | `getName()` Set the value of the '`name`' attribute.
    `protected String` | `getType()` Get the value of the '`type`' attribute.
    `String` | `getValue()` Get the value of the '`value`' attribute.
    `boolean` | `isDisabled()` Get the value of the '`disabled`' attribute.
    `void` | `setDisabled(boolean disabled)` Set the value of the '`disabled`' attribute.
    `void` | `setName(String name)` Get the value of the '`name`' attribute.
    `void` | `setValue(String value)` Set the value of the '`value`' attribute.
    `protected int` | `writeTagContent(TagWriter tagWriter)` Subclasses should implement this method to perform tag content rendering.
    `protected void` | `writeValue(TagWriter tagWriter)` Writes the '`value`' attribute to the supplied `TagWriter`.

    - ### Methods inherited from class org.springframework.web.servlet.tags.form.AbstractHtmlElementTag

      `getCssClass, getCssErrorClass, getCssStyle, getDir, getDynamicAttributes, getLang, getOnclick, getOndblclick, getOnkeydown, getOnkeypress, getOnkeyup, getOnmousedown, getOnmousemove, getOnmouseout, getOnmouseover, getOnmouseup, getTabindex, getTitle, isValidDynamicAttribute, resolveCssClass, setCssClass, setCssErrorClass, setCssStyle, setDir, setDynamicAttribute, setLang, setOnclick, setOndblclick, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setTabindex, setTitle, writeDefaultAttributes, writeOptionalAttributes`

    - ### Methods inherited from class org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag

      `autogenerateId, convertToDisplayString, doFinally, getBindStatus, getBoundValue, getEditor, getId, getNestedPath, getPath, getPropertyEditor, getPropertyPath, processFieldValue, resolveId, setId, setPath`

    - ### Methods inherited from class org.springframework.web.servlet.tags.form.AbstractFormTag

      `createTagWriter, doStartTagInternal, evaluate, getDisplayString, getDisplayString, isDefaultHtmlEscape, writeOptionalAttribute`

    - ### Methods inherited from class org.springframework.web.servlet.tags.HtmlEscapingAwareTag

      `htmlEscape, isHtmlEscape, isResponseEncodedHtmlEscape, setHtmlEscape`

    - ### Methods inherited from class org.springframework.web.servlet.tags.RequestContextAwareTag

      `doCatch, doStartTag, getRequestContext`

    - ### Methods inherited from class javax.servlet.jsp.tagext.TagSupport

      `doAfterBody, findAncestorWithClass, getParent, getValue, getValues, release, removeValue, setPageContext, setParent, setValue`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DISABLED_ATTRIBUTE

          public static final String DISABLED_ATTRIBUTE

      The name of the '`disabled`' attribute.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ButtonTag

          public ButtonTag()

  - ### Method Detail

    - #### setName

          public void setName(String name)

      Get the value of the '`name`' attribute.

    - #### getName

          @Nullable
          public String getName()

      Set the value of the '`name`' attribute.
      Overrides:
        `getName` in class `AbstractDataBoundFormElementTag`
      Returns:
        the value for the HTML '`name`' attribute

    - #### setValue

          public void setValue(@Nullable
                               String value)

      Set the value of the '`value`' attribute.

    - #### getValue

          @Nullable
          public String getValue()

      Get the value of the '`value`' attribute.

    - #### setDisabled

          public void setDisabled(boolean disabled)

      Set the value of the '`disabled`' attribute.

    - #### isDisabled

          public boolean isDisabled()

      Get the value of the '`disabled`' attribute.

    - #### writeTagContent

          protected int writeTagContent(TagWriter tagWriter)
                                 throws JspException

      Description copied from class: `AbstractFormTag`
      Subclasses should implement this method to perform tag content rendering.
      Specified by:
        `writeTagContent` in class `AbstractFormTag`
      Returns:
        valid tag render instruction as per `Tag.doStartTag()`.
      Throws:
        `JspException`

    - #### writeValue

          protected void writeValue(TagWriter tagWriter)
                             throws JspException

      Writes the '`value`' attribute to the supplied `TagWriter`. Subclasses may choose to override this implementation to control exactly when the value is written.
      Throws:
        `JspException`

    - #### getDefaultValue

          protected String getDefaultValue()

      Return the default value.
      Returns:
        the default value if none supplied

    - #### getType

          protected String getType()

      Get the value of the '`type`' attribute. Subclasses can override this to change the type of '`input`' element rendered. Default value is '`submit`'.

    - #### doEndTag

          public int doEndTag()
                       throws JspException

      Closes the '`button`' block tag.
      Specified by:
        `doEndTag` in interface `Tag`
      Overrides:
        `doEndTag` in class `TagSupport`
      Throws:
        `JspException`