Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Please make sure you have read the Tag Syntax document and understand how tag attribute syntax works.

Within the form tags, there are two classes of tags: the form tag itself, and all other tags, which make up the individual form elements. The behavior of the form tag itself is different than that of the elements enclosed within it.

...

As explained in Themes and Templates, the HTML Tags (which includes Form Tags) are all driven by templates. Templates are grouped together to form create themes. The framework bundles three themes in the distribution.

...

The predefined themes can be used "as is" or customized.

...

...

The xhtml theme renders out a two-column table. If a different layout is needed, do not write your own HTML. Create a new theme or utilize the simple theme.

Simple theme caveats

The downside of using the simple theme is that it doesn't support as many of the attributes that the other themes do. For example, the label attribute does nothing in the simple theme, and the automatic display of error messages is not supported.

...

All the form tags extend the UIBean class. This base class provides a set of common attributes, that can be grouped in to three categories: templated-related, javascript-related, and general attributes. The individual attributes are documented on each tag's reference page. However, it is a good idea to familiarize yourself with the structure of the UI tags and what attributes are available for all tags.

In addition to the common attributes, a special attribute exists for all form element tags: form (${parameters.form}). The form property represents the attributes used to render the form tag, such as the form's id. In a template, the form's ID can be found by calling ${parameters.form.id}.

Template-Related Attributes

...

...

Javascript-Related Attributes

...

Tooltip Related Attributes

...

...

General Attributes

...

Some tag attributes may not be utilized by all, or any, of the templates. For example, the form tag supports the tabindex attribute, but none of the themes render the tabindex.

Value/Name Relationship

...

Likewise, a form control could be populated by calling a JavaBean accessor, like getPostalCode. In the expression language, we can refer to the JavaBean property by name. An expression like "%{postalCode}" would in turn call getPostalCode.

...

...

However, since the tags imply a relationship between the name and value, the value attribute is optional. If a value is not specified, by default, the JavaBean accessor is used instead.

...

While most attributes are exposed to the underlying templates as the same key as the attribute (${parameters.label}), the value attribute is not. Instead, it can be accessed via the nameValue key (${parameters.nameValue}). The nameValue key indicates that the value may have been generated from the name attribute rather than explicitly defined in the value attribute.

...

Forms

The default ID is the action name. For example, "updateAddress".

Controls

The default ID is the form's name concatenated with the tag name. For example, "updateAddress_postalCode".

Form labelposition propagation

When labelposition attribute was defined for <s:form> tag it will be propagated to all form elements, but if form element defines its own labelposition it will take precedence over <s:form>'s attribute. Since 2.3.17.

Required Attribute

The required attribute on many UI tags defaults to true only if you have client-side validation enabled, and a validator is associated with that particular field.

Tooltip

...

...

Form Tag Reference

Note
titleEntering push and pop zone

All tags that push something onto the value stack (like i18n or bean tags) will pop those objects from the stack when its processing completes. If a bean is instantiated with the bean tag (<saf:bean name="br.univap.fcc.sgpw.util.FormattersHelper">) that bean will be available on the value stack only until the tag closes.

...

Next: UI Tag Reference