Home > Guides > Core Developers Guide > Validation > Client Side Validation |

Apache Struts 2 Documentation
Client Side Validation
Edit Page Browse Space Add Page Add News

The framework adds support for client-side validation on top of the standard validation framework.

Client-side validation can be enabled on a per-form basis by specifying `validate="true"` in the form tag.

If a `name` for the form is not given, the action mapping name will be used as the form name. Otherwise, a correct `action` and `namespace` attributes must be provided to the `<saf:form>` tag.

Referencing "submitProfile" in the "/user" namespace

Technically, the form's action attribute can refer to a "path" that includes the namespace and action as a URI. But, client-side validation requires that the action name and namespeact to be set separately.

Won't work with client-side validation!

All the usual validation configuration steps apply to client-side validation. Client-side validation uses the same validation rules as server-side validation. If server-side validation doesn't work, then client-side validation won't work either.

The left hand doesn't know ...

Icon

The `required` attribute on many Struts Tags is not integrated with client-side validation! The tag attribute is used by certain themes (like xhtml) to put a visual marker (usually '*') next to the field. The tag doesn't know if the validation system actually "requires" the field or not.

## Client Side Validation Types

There are two styles of client side validation.

Pure JavaScript Client Side Validation | Used by the xhtml theme and css_xhtml theme
AJAX Client Side Validation | Used by the ajax theme

Children Show Children Hide Children
$page.link($child) (Apache Struts 2 Documentation)