---
layout: default
title: Pure JavaScript Client Side Validation
parent:
  title: Client Side Validation
  url: client-side-validation
---

# Pure JavaScript Client Side Validation
{:.no_toc}

* Will be replaced with the ToC, excluding a header
{:toc}

## Description

Pure JavaScript client side validation is the simplest but least feature-rich type of [Client Side Validation](client-side-validation). 
This type of validation uses 100% client-side JavaScript code to try to validate the values entered by the user. 
Because the validation logic is actually repeated in the JavaScript code, it is important to understand that 
some values will be considered acceptable by the JavaScript code but will be marked as unacceptable by the server-side [Validation](validation).

Only the following validators are supported:

* required validator
* requiredstring validator
* stringlength validator
* regex validator
* email validator
* url validator
* int validator
* double validator

> JavaScript client validation is not available for visitor validations.

## Error reporting

Because client side validation does not talk to the server, the theme (_xhtml theme_  or _css_xhtml theme_ ) is responsible 
for properly manipulating the HTML DOM to display the error message inline. The JavaScript that is responsible for doing 
this logic is `validation.js` and can be found in each theme.

> Errors are reported using the default validation message, not the internationalized version that the server-side might
> be aware of. This is a known issue. You may want to try the [AJAX Client Side Validation](ajax-client-side-validation) 
> for messages that are fully internationalized.

## Additional Validator Support

If you wish to add additional validator support beyond those listed, you may override the _xhtml theme_  template 
`form-close-validate.ftl`. This file contains the JavaScript that tries to validate each user-entered value from within 
the browser. The _css_xhtml theme_  extends the _xhtml theme_  and therefore doesn't have its own `form-close-validate.ftl`
template.
