1.0.1 • Published 4 years ago

elo7-validate-amd v1.0.1

Weekly downloads
6
License
-
Repository
-
Last release
4 years ago

Validate-amd

Validate-amd library

validate.js is a small library to help form validation. This library uses amd structure.

Build Status

It uses html5 form attributes validate specification and works on browsers that does not support html5 validation. Then, we built it from scratch.

Installation

npm install elo7-validate-amd

Dependencies

Validate-amd depends on an amd implementation. We suggest async-define implementation for dependency lookup. Validate-amd also depends on doc-amd.

Methods

validateForm

.validateForm(selectorOrDocElement)

Description:

Validate the form using almost all the html5 attributes validate spec. Returns a array with the error messages.

Parameters:

selectorOrDocElement: doc-amd object or String //A CSS selector. Note that, if it is a class name with dots, the dots must be escaped. E.g.: doc(".my\\.class")

Sample:
define(['validate'], function(Validate) {
  var validate = new Validate(),
      errors = validate.validateForm('#form');

  errors.forEach(function(error) {
    if (error.message) {
      // executes when there are errors
    }
  });
});

validateField

.validateField(selectorOrElements)

Description:

Validate individual fields. Returns an object with a error message.

Parameters:

selectorOrDocElement: doc-amd object or String //A CSS selector. Note that, if it is a class name with dots, the dots must be escaped. E.g.: doc(".my\\.class")

Sample:
define(['validate'], function(Validate) {
  var validate = new Validate(),
      error = validate.validateField($('input[name=example1]'));

  if (error.message) {
    // executes when there are errors
  }
});

Customize messages

new Validate({ messages: object });

Description:

Customize the error messages

Parameters:

object: Object //An object with the properties messages ("required", "min", "max", "maxlength", "pattern", "email" or "url")

Sample:
define(['validate'], function(Validate) {
   var custom_messages = {
      'required': 'Field required.',
      'min': 'Enter a value greater than or equal to {0}.',
      'max': 'Enter a value greater than or equal to {0}.',
      'maxlength': 'Enter a value with max length less than or equal to {0}.',
      'pattern': 'Enter a valid value.',
      'email': 'Enter a valid email address.',
      'url': 'Enter a valid url'
  }

  var validate = new Validate({ messages: custom_messages }),
      errors = validate.validateForm('#form');

      errors.forEach(function(error) {
        if (error.message) {
         // executes when there are errors
        }
      });
});
Default messages:
 required: This field is required'
 min: 'Please enter a value greater than or equal to {0}'
 max: 'Please enter a value greater than or equal to {0}'
 maxlength: 'Please enter a value with max length less than or equal to {0}'
 pattern: 'Please enter a valid value'
 email: 'Please enter a valid email address'
 url: 'Please enter a valid url'

License

Validate-amd is released under the BSD. Have at it.


Copyright :copyright: 2017 Elo7# validate-amd