Contains the messages for Form.Validator.

Simply change the language property to the en-US.

Locale.use("en-US");

See also:

Language Locale Code Authors
Arabic ar Chafik Barbar
Catalan ca-CA Miquel Hudin
Chinese (simplified) zh-CHS YMind Chan
Chinese (traditional) zh-CHT YMind Chan
Czech cs-CZ Jan Černý
Danish da-DK Martin Overgaard
Dutch nl-NL Lennart Pilon
English en-US Aaron Newton
Estonian et-EE Kevin Valdek
Finnish fi-FI ksel
French fr-FR Miquel Hudin
German (Switzerland) de-CH Michael van der Weg
German de-DE Frank Rossi, Ulrich Petri
Hungarian hu-HU Zsolt Szegheő
Italian it-IT ALeonardo Laureti, Andrea Novero
Japanese ja-JP Noritaka Horio
Norwegian no-NO Espen 'Rexxars' Hovlandsdal
Persian (Farsi) fa Amir Hossein Hodjaty Pour
Polish pl-PL Oskar Krawczyk
Portuguese (Brazil) pt-BR Fábio Miranda Costa
Portuguese pt-PT Miquel Hudin
Russian ru-RU Evstigneev Pavel
Slovenian si-SI Radovan Lozej
Spanish (Argentina) es-AR Diego Massanti
Spanish es-ES Alfons Sanchez
Swedish sv-SE Martin Lundgren
Turkish tr-TR Faruk Can Bilir
Ukrainian uk-UA Slik

Notes:

  • Chinese includes a validate-currency-yuan validator
  • required - (string) 'This field is required.'
  • minLength - (string) 'Please enter at least {minLength} characters (you entered {length} characters).' where minLength and length are variables for the minimum length and the length the user entered.
  • maxLength - (string) 'Please enter no more than {maxLength} characters (you entered {length} characters).' where maxLength and length are variables for the maximum length and the length the user entered.
  • integer - (string) 'Please enter an integer in this field. Numbers with decimals (e.g. 1.25) are not permitted.'
  • numeric - (string) 'Please enter only numeric values in this field (i.e. "1" or "1.1" or "-1" or "-1.1").'
  • digits - (string) 'Please use numbers and punctuation only in this field (for example, a phone number with dashes or dots is permitted).'
  • alpha - (string) 'Please use letters only (a-z) with in this field. No spaces or other characters are allowed.'
  • alphanum - (string) 'Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed.'
  • dateSuchAs - (string) 'Please enter a valid date such as {date}' where date is an example of a valid date entry
  • dateInFormatMDY - (string) 'Please enter a valid date such as MM/DD/YYYY (i.e. "12/31/1999")'
  • email - (string) 'Please enter a valid email address. For example "fred@domain.com".'
  • url - (string) 'Please enter a valid URL such as http://www.google.com.'
  • currencyDollar - (string) 'Please enter a valid $ amount. For example $100.00 .'
  • oneRequired - (string) 'Please enter something for at least one of these inputs.'
  • errorPrefix - (string) 'Error: '
  • warningPrefix - (string) 'Warning: '
lidator's name. All properties will be passed to the validator:

// here we validate the date, but the validator gets access to
// the property defined for dateFormat (and any other property defined this way)
<input data-validators="validate-date dateFormat:'%d/%m/%Y'" />
  • Note that the property must be decodable by JSON.decode, so strings must have quotes, for example (single quotes are fine).

  • Note that string values that require spaces should use URL encoding, as spaces are the delimiters for validator names. Then your validator should url decode them from the data-validator-properites object when it uses them. Alternately, you can store this data directly on the input:

    $('myinput').set('validatorProps', {
        someValue: "I'm a string with spaces!"
    });
  • Using Warnings

    Each InputValidator can also be used to generate warnings. Warnings still show error messages, but do not prevent the form from being submitted. Warnings can be applied in two ways:

    • warn per validator - You can specify any validator as a warning by prefixing "warn-" to the name. So, for example, if you have a validator called "validate-numbers" you can add the name "warn-validate-numbers" and a warning will be offered rather than an error. The validator will not prevent the form from submitting.
    • warn per field - You can also ignore all the validators for a given field. You can add the name "warnOnly" to set all it's validators to present warnings only or you can add the class "ignoreValidation" to the field to turn all the validators off. Note that the Form.Validator class has methods do this for you: see Form.Validator:ignoreField and Form.Validator:enforceField.

    Internationalization

    Form.Validator comes with numerous built-in validators (see below), each of which presents a validation error to the user when they trip it. These can be altered for different languages. See Locale

    If you do translate these, please send them back to us so we can add them to our repository.

    Enables the form validator, attaching events for submit, blur, and change per the options configuration. This method is invoked on startup.

    Syntax

    myFormValidator.enable();

    Returns

    Disables the form validator, removing events for submit, blur, and change per the options configuration.

    Syntax

    myFormValidator.disable();

    Returns

    Removes all the error messages from the form.

    Syntax

    myFormValidator.reset();

    Returns

    Validates all the inputs in the form; note that this function is called on submit unless you specify otherwise in the options.

    Syntax

    myFormValidator.validate(event);

    Arguments

    1. event - (event, optional) the submit event

    Returns

    • (boolean) true if all the form inputs pass validation

    Validates the value of a field against all the validators.

    Syntax

    myFormValidator.validateField(field[, force]);

    Arguments

    1. field - (mixed) A string of the id for an Element or an Element reference of the input element to evaluate
    2. force - (boolean, optional) whether to force validation; if false (or undefined) and options.serial == true, the validation does not occur

    Returns

    • (boolean) true if the form input passes validation

    Tests a field against a specific validator.

    Syntax

    myFormValidator.test(name, field, warn);

    Arguments

    1. name - (string) the name associated with the validator
    2. field - (mixed) A string of the id for an Element or an Element reference of the input element to test against the name/validator
    3. warn - (boolean, optional) whether test will add a warning advice message if the validator fails; if set to true test will always return valid regardless of the input.

    Returns

    • (boolean) true if the form input passes the specified validation

    Removes all the error messages for a specific field.

    Syntax

    myFormValidator.resetField(field);

    Arguments

    1. field - (mixed) A string of the id for an Element or an Element reference of the input element to reset

    Returns

    Stops validating the form; when form is submitted, even if there are values that do not pass validation the submission will proceed.

    Syntax

    myFormValidator.stop();

    Returns

    Resumes validating the form.

    Syntax

    myFormValidator.start();

    Returns

    Stops validating a particular field.

    Syntax

    myFormValidator.ignoreField(field[, warn]);

    Arguments

    1. field - (mixed) A string of the id for an Element or an Element reference of the input element to ignore
    2. warn - (boolean, optional) whether to produce a warning if the validator does not pass; defaults to false

    Returns

    Resumes validating a particular field

    Syntax

    myFormValidator.enforceField(field);

    Arguments

    1. field - (mixed) A string of the id for an Element or an Element reference of the input element to resume validating

    Returns

    Form.Validator.js includes many default validators. You can add your own using these methods.

    Adds a new form validator to the global Form.Validator object or to an instance (see notes).

    Syntax

    //add a form validator to my instance
    myFormValidator.add(name, options);
    //add a form validator to all future instances (globally)
    Form.Validator.add(name, options);

    Arguments

    1. name - (string) the name associated with the validator
    2. options - (object) the InputValidator options (errorMsg and test)

    Notes

    This method is a property of every instance of Form.Validator as well as the Form.Validator object itself. That is to say that you can add validators to the Form.Validator object or to an instance of it. Adding validators to an instance of Form.Validator will make those validators apply only to that instance, while adding them to the Class will make them available to all instances.

    Examples

    //add a validator for ALL instances
    Form.Validator.add('isEmpty', {
        errorMsg: 'This field is required',
        test: function(element){
            if (element.value.length == 0) return false;
            else return true;
        }
    });
    //this validator is only available to this single instance
    var myFormValidatorInstance = new Form.Validator('myform');
    myFormValidatorInstance.add('doesNotContainTheLetterQ', {
        errorMsg: 'This field cannot contain the letter Q!',
        test: function(field){
            return !field.get('value').test(/q/,'i');
        }
    });
    //Extend Form.Validator, add a global validator for all instances of that version
    var NewFormValidator = Form.Validator.extend({
        //...some code
    });
    NewFormValidator.add('doesNotContainTheLetterZ', {
        errorMsg: 'This field cannot contain the letter Z!',
        test: function(field){
            return !field.get('value').test(/z/,'i');
        }
    });

    An array of InputValidator configurations (see Form.Validator:add above).

    Syntax

    //add several input validators to all instances of Form.Validator
    Form.Validator.addAllThese(validators);
    //add several input validators to a specific instance of Form.Validator
    myFormValidator.addAllThese(validators);

    Arguments

    1. validators - (array) an array of validators (see example below and Form.Validator:add).

    Example

    Form.Validator.addAllThese([
        ['name1', {errorMsg: ..., test: ...}],
        ['name2', {errorMsg: ..., test: ...}],
        ['name3', {errorMsg: ..., test: ...}],
        // etc..
    ]);

    Sets and gets default options for the Form.Validator instance of an Element.

    Setter

    Syntax

    el.set('validator'[, options]);

    Arguments

    • options - (object) the Form.Validator options.

    Returns

    • (element) This Element.

    Examples

    el.set('validator', {serial: true});
    el.validate();

    Getter

    Syntax

    el.get('validator', [options]);

    Arguments

    1. property - (string) the Form.Validator property argument.
    2. options - (object) the Form.Validator options.

    Returns

    • (object) The Element's internal Form.Validator instance.

    Examples

    el.get('validator', {serial: true, evaluateFieldsOnBlur: false}).reset();

    Notes

    • When options are passed to either the setter or the getter, the instance will NOT be recreated. Its existing instance will have its options set with the new values.
    • As with the other Element shortcuts, the difference between a setter and a getter is that the getter returns the instance, while the setter returns the element (for chaining and initialization).

    Calls the validate method on the specified element.

    Syntax

    myForm.validate([options]);

    Arguments

    1. options - (object; optional) options to apply to the internal element's of Form.Validator.

    Returns

    • (boolean) Returns true if the form passes validation, else false if there were errors.

    Here are the validators that are included in this library. Add the name to any input's data-validators property and then create a new Form.Validator and these will automatically be applied. See Form.Validator:add on how to add your own.

    Evaluates if the input is empty; this is a utility validator, see Form.Validator.required.

    Displays an error if the field is empty.

    Error Msg: "This field is required"

    Displays a message if the input value is not the exact supplied length.

    Error Msg: "Please enter [defined length] characters (you entered [input length] characters)"

    Note

    You must add this name AND properties for it to your input.

    Example

    <input type="text" name="username" class="length:10" id="username" />

    Displays a message if the input value is less than the supplied length.

    Error Msg: "Please enter at least [defined minLength] characters (you entered [input length] characters)"

    Note

    You must add this name AND properties for it to your input.

    Example

    <input type="text" name="username" class="minLength:10" id="username" />

    Displays a message if the input value is less than the supplied length.

    Error Msg: "Please enter no more than [defined maxLength] characters (you entered [input length] characters)"

    Note

    You must add this name AND properties for it to your input.

    Example

    <input type="text" name="username" class="maxLength:10" id="username" />

    Validates that the entry is a number.

    Error Msg: 'Please enter only numeric values in this field ("1" or "1.1" or "-1" or "-1.1").'

    Validates that the entry is an integer.

    Error Msg: "Please enter an integer in this field. Numbers with decimals (e.g. 1.25) are not permitted."

    Validates that the entry contains only numbers but allows punctuation and spaces (for example, a phone number)

    Error Msg: "Please use numbers only in this field. Please avoid spaces or other characters such as dots or commas."

    Validates that the entry contains only letters

    Error Msg - "Please use letters only (a-z) in this field."

    Validates that the entry is letters and numbers only

    Error Msg: "Please use only letters (a-z) or numbers (0-9) only in this field. No spaces or other characters are allowed."

    Validates that the entry parses to a date. The dateFormat property can be set to format the date after the field is validated.

    If you want to validate a custom format, you should use Date.defineParser or use Date Locale. If Date is not included in your build, only the dd/mm/yy or dd/mm/yyyy formats are accepted.

    Error Msg: "Please enter a valid date (such as 12/31/1999)"

    Example:

    <input data-validators="validate-date dateFormat:'%d/%m/%Y'" />

    Validates that the entry is a valid email address.

    Error Msg: "Please enter a valid email address. For example 'fred@domain.com'."

    Validates that the entry is a valid url

    Error Msg: "Please enter a valid URL."

    Validates that the entry matches any of the following:

    • [$]1[##][,###]+[.##]
    • [$]1###+[.##]
    • [$]0.##
    • [$].##

    Error Msg: "Please enter a valid $ amount. For example $100.00 ."

    Validates that all the entries within the same node are not empty.

    Error Msg: "Please enter something for at least one of the above options."

    Note

    • This validator will get the parent element for the input and then check all its children. To use this validator, enclose all the inputs you want to group in another element (doesn't matter which); you only need apply this class to one of the elements.

    Example

    <div>
        <input ..../>
        <input ..../>
        <input .... data-validators="validate-one-required"/>
    </div>

    This class contains functionality to test a field for various criteria and also to generate an error message when that test fails.

    Authors

    Implements

    Syntax

    new InputValidator(name, options);

    Arguments

    1. name - (string) a name that this field will be related to (see example below)
    2. options - (object) a key/value set of options

    Options

    • errorMsg - (mixed) a message to display; see section below for details.
    • test - (function) a function that returns true or false

    Option: errorMsg

    The errorMsg option can be any of the following:

    • string - the message to display if the field fails validation
    • boolean:false - do not display a message at all
    • function - a function to evaluate that returns either a string or false. This function will be passed two parameters: the field being evaluated and any properties defined for the validator as a name (see examples below)

    Option: test

    The test option is a function that will be passed the field being evaluated and any properties defined for the validator as a name (see example below); this function must return true or false.

    Examples

    //html code
    <input type="text" name="firstName" data-validators="required" id="firstName"/>
    
    //simple validator
    var isEmpty = new InputValidator('required', {
        errorMsg: 'This field is required.',
        test: function(field){
            return ((field.get('value') == null) || (field.get('value').length == 0));
        }
    });
    isEmpty.test($("firstName")); //true if empty
    isEmpty.getError($("firstName")) //returns "This field is required."
    
    //two complex validators
    <input type="text" name="username" data-validators="minLength:10 maxLength:100" id="username"/>
    
    var minLength = new InputValidator ('minLength', {
        errorMsg: function(element, props){
            //props is {minLength:10, maxLength:100}
            if ($type(props.minLength))
                return 'Please enter at least ' + props.minLength + ' characters' +
                    ' (you entered ' + element.value.length + ' characters).';
            else return '';
        },
        test: function(element, props){
            //if the value is >= than the minLength value, element passes test
            return (element.value.length >= $pick(props.minLength, 0));
        }
    });
    minLength.test($('username'));
    var maxLength = new InputValidator ('maxLength', {
        errorMsg: function(element, props){
            //props is {minLength:10, maxLength:100}
            if ($type(props.maxLength))
                return 'Please enter no more than ' + props.maxLength + ' characters' +
                    '(you entered ' + element.value.length + ' characters).';
            else return '';
        },
        test: function(element, props){
            //if the value is <= than the maxLength value, element passes test
            return (element.value.length <= $pick(props.maxLength, 10000));
        }
    });

    Tests a field against the validator's rule(s).

    Syntax

    myInputValidator.test(field);

    Arguments

    1. field - (mixed) A string of the id for an Element or an Element reference of the form input to test

    Returns

    • (boolean) - true if the field passes the test; false if it does not pass the test

    Retrieves the error message for the validator.

    Arguments

    1. field - (mixed) A string of the id for an Element or an Element reference of the form input to test

    Returns

    • (mixed) - The error message (string) or boolean false if no message is meant to be returned.