# a4j

## Tag commandButton

- Description:

    The <a4j:commandButton> component is similar to the JavaServer Faces (JSF) <h:commandButton> component, but additionally includes Ajax support.

    @author Nick Belaevski

- Component Information
  Info | Value
  --- | ---
  Component Type | `org.richfaces.CommandButton`
  Handler Class | None
  Renderer Type | `org.richfaces.CommandButtonRenderer`
  Description | The <a4j:commandButton> component is similar to the JavaServer Faces (JSF) <h:commandButton> component, but additionally includes Ajax support. @author Nick Belaevski

- Attributes
  Name | Required | Type | Description
  --- | --- | --- | ---
  `accesskey` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Access key that, when pressed, transfers focus to this element.
  `action` | `false` | `javax.el.ValueExpression` (must evaluate to `javax.faces.el.MethodBinding`) | MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.
  `actionListener` | `false` | `javax.el.ValueExpression` (must evaluate to `javax.faces.el.MethodBinding`) | MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".
  `binding` | `false` | `javax.el.ValueExpression` (must evaluate to `javax.faces.component.UIComponent`) | The value binding expression used to wire up this component to a component property of a JavaBean class
  `bypassUpdates` | `false` | `javax.el.ValueExpression` (must evaluate to `boolean`) | If "true", after process validations phase it skips updates of model beans on a force render response. It can be used for validating components input.
  `data` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.Object`) | Serialized (on default with JSON) data passed to the client by a developer on an AJAX request. It's accessible via "event.data" syntax. Both primitive types and complex types such as arrays and collections can be serialized and used with data
  `disabled` | `false` | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating that this element must never receive focus or be included in a subsequent submit. Default value - "false"
  `execute` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.Object`) | Ids of components that will participate in the "execute" portion of the Request Processing Lifecycle. Can be a single id, a space or comma separated list of Id's, or an EL Expression evaluating to an array or Collection. Any of the keywords "@this", "@form", "@all", "@none", "@region" may be specified in the identifier list. Some components make use of additional keywords
  `id` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | The component identifier for this component. This value must be unique within the closest parent component that is a naming container.
  `image` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Absolute or relative URL of the image to be displayed for this button. If specified, this "input" element will be of type "image". Otherwise, it will be of the type specified by the "type" property with a label specified by the "value" property
  `immediate` | `false` | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating that, if this component is activated by the user, notifications should be delivered to interested listeners and actions immediately (that is, during Apply Request Values phase) rather than waiting until Invoke Application phase.
  `limitRender` | `false` | `javax.el.ValueExpression` (must evaluate to `boolean`) | If "true", render only those ids specified in the "render" attribute, forgoing the render of the auto-rendered panels
  `onbeforedomupdate` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | The client-side script method to be called after the ajax response comes back, but before the DOM is updated
  `onbegin` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | The client-side script method to be called before an ajax request.
  `onclick` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is clicked over this element.
  `oncomplete` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | The client-side script method to be called after the DOM is updated
  `ondblclick` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is double clicked over this element.
  `onerror` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | The client-side script method to be called when the request results in an error
  `onkeydown` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a key is pressed down over this element.
  `onkeypress` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a key is pressed and released over this element.
  `onkeyup` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a key is released over this element.
  `onmousedown` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is pressed down over this element.
  `onmousemove` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is moved within this element.
  `onmouseout` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is moved away from this element.
  `onmouseover` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is moved onto this element.
  `onmouseup` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is released over this element.
  `render` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.Object`) | Ids of components that will participate in the "render" portion of the Request Processing Lifecycle. Can be a single id, a space or comma separated list of Id's, or an EL Expression evaluating to an array or Collection. Any of the keywords "@this", "@form", "@all", "@none", "@region" may be specified in the identifier list. Some components make use of additional keywords
  `rendered` | `false` | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.
  `resetValues` | `false` | `javax.el.ValueExpression` (must evaluate to `boolean`) | If true, indicate that this particular Ajax transaction is a value reset transaction. This will cause resetValue() to be called on any EditableValueHolder instances encountered as a result of this ajax transaction. If not specified, or the value is false, no such indication is made.
  `status` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Name of the request status component that will indicate the status of the Ajax request
  `style` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | CSS style(s) to be applied when this component is rendered.
  `styleClass` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.
  `tabindex` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | This attribute specifies the position of the current element in the tabbing order for the current document. This value must be a number between 0 and 32767. User agents should ignore leading zeros
  `title` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Advisory title information about markup elements generated for this component.
  `type` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Type of button to create. Can be one of "submit", "button", "image" and "reset". If not specified, the default value is "submit".
  `value` | `false` | `javax.el.ValueExpression` (must evaluate to `java.lang.Object`) | The current value of this component.

Output generated by Vdldoc View Declaration Language Documentation Generator.