<ao:input>

Renders an <input> tag.

The value may be provided in one of three ways, in precedence order:

  1. Direct child <ao:value> tag.
  2. As the value attribute
  3. Contents of tag body, trimmed.

For type="image", the src may be provided in one of two ways, in precedence order:

  1. Direct child <ao:src> tag.
  2. As the src attribute

Any attribute that has no namespace and begins with param. is added to the src as a URL parameter. The parameter name is the part of the attribute name following param..

When a parameter value is null it is not added. If the value is an Iterable, Iterator, Enumeration, or array, then each non-null element is coerced to String as a separate parameter in iteration order. Otherwise, the value itself is coerced to String for the parameter value.

Nested <ao:param> or <ao:params> tags will add parameters after any provided as attributes.

Tag Information

Tag Class: com.aoindustries.taglib.InputTag
TagExtraInfo Class: com.aoindustries.taglib.InputTagTEI
Body Content: scriptless
Display Name: None
Dynamic Attributes: true

Attributes

Name Required Evaluation Type Description
id No Runtime Object

The id of the element. A nested <ao:id> tag will override this value.

type No Runtime Object

The type of input element. A nested <ao:type> tag will override this value.

name No Runtime Object

The name of the input element. A nested <ao:name> tag will override this value.

value No Runtime Object

The value of the input element. A nested <ao:value> tag will override this value. If neither is provided, the output of the body is used with whitespace trimmed.

onclick No Runtime Object

A JavaScript onclick handler. A nested <ao:onclick> tag will override this value.

onchange No Runtime Object

A JavaScript onchange handler. A nested <ao:onchange> tag will override this value.

onfocus No Runtime Object

A JavaScript onfocus handler. A nested <ao:onfocus> tag will override this value.

onblur No Runtime Object

A JavaScript onblur handler. A nested <ao:onblur> tag will override this value.

onkeypress No Runtime Object

A JavaScript onkeypress handler. A nested <ao:onkeypress> tag will override this value.

size No Runtime Object

The size of the input element. A nested <ao:size> tag will override this value.

maxlength No Runtime Integer

The maxlength of the input element. A nested <ao:maxlength> tag will override this value.

readonly No Runtime boolean

The readonly attribute. Accepts values of true or false. A non-empty nested <ao:readonly> tag will override this value. If readonly is true, will add the attribute as readonly="readonly", otherwise the attribute is not added.

disabled No Runtime boolean

The disabled attribute. Accepts values of true or false. A non-empty nested <ao:disabled> tag will override this value. If disabled is true, will add the attribute as disabled="disabled", otherwise the attribute is not added.

src No Runtime String

The src for the image (only for type="image"). The src is modified in several ways to make things much easier to work with.

A nested <ao:src> tag will override this value.

In order to make relative paths predictable, relative paths are interpreted from the current JSP page, as long as all includes have been done via <ao:include> and any forward via <ao:forward>.

In order to keep paths app-relative, if starts with a /, the context path will be prepended to the path.

In order to simplify things behind URL mapping schemes, the src is always written starting with '/'. This avoids any need to include any <ao:base> tags.

URL rewriting is performed as needed via HttpServletResponse.encodeURL.

To support paths in different character sets, a Unicode to ASCII URI encoding is performed on every character that is not defined in RFC 3986: Reserved Characters. To avoid ambiguity, any dynamic parameters or anchors in the URL must have been correctly encoded by the caller.

Any directly nested <ao:param> or <ao:params> tag will add parameters to the src.

absolute No Runtime boolean

When true, generates an absolute URL for the src for the image, (only for type="image"). Defaults to false.

canonical No Runtime boolean

When true, will generate a Canonical URL. Canonical URLs should be used where per-user response URL rewriting (such as information added when cookies are disabled) should be avoided. Defaults to false.

addLastModified No Runtime String

If the src represents a local resource, a parameter of "lastModified=#####" may be automatically added with the timestamp of the local resource to the nearest second. May be one of true, false, or auto. Defaults to auto.

In auto mode, last modified stamping may be disabled by the client with the X-com-aoindustries-servlet-http-LastModifiedServlet-lastModified: false header.

In auto mode, last modified stamping is not performed on Canonical URLs.

width No Runtime Object

The optional width for the image, (only for type="image"). A nested <ao:width> tag will override this value.

height No Runtime Object

The optional height for the image, (only for type="image"). A nested <ao:height> tag will override this value.

alt No Runtime Object

The alt text for the input (only for type="image"). Required when type is "image". A nested <ao:alt> tag will override this value.

title No Runtime Object

The title text for the element. A nested <ao:title> tag will override this value.

class No Runtime Object

The CSS class for the element. A nested <ao:class> tag will override this value.

style No Runtime Object

The CSS style for the element. A nested <ao:style> tag will override this value.

checked No Runtime boolean

The checked attribute. Accepts values of true or false. A non-empty nested <ao:checked> tag will override this value. If checked is true, will add the attribute as checked="checked", otherwise the attribute is not added.

tabindex No Runtime int

The optional tabindex value. Defaults to 0. If value is >= 1, will add tabindex attribute. A non-empty nested <ao:tabindex> tag will override this value.

autocomplete No Runtime boolean

Turns on or off the autocomplete for this input element. Accepts values of true or false (not "on" or "off" due to this being a boolean type). If autocomplete is false, will add the attribute as autocomplete="off", otherwise the attribute is not added. Defaults to true with no attribute added.

Variables

No Variables Defined.