Skip to content

ChaseWest/JSValidator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JSValidator

##Setup

Include the validator.js file:

<script src="validator.js"></script>

Instantiate the validator method passing in an object of options (defined below), if any.

<script>
	validator();
</script>

To make a field required, simply add the required class to the desired input.

<input class="required" placeHolder=""/><br/>

The following input types are defined by default:

<input class="required tel" placeHolder="tel"/>
<input class="required date" placeHolder="date"/>
<input class="required time" placeHolder="time"/>
<input class="required datetime" placeHolder="datetime"/>
<input class="required number" placeHolder="number"/>
<input class="required email" placeHolder="email"/>
<input class="required url" placeHolder="url"/>
<input class="required color" placeHolder="color"/>
<input class="required range" placeHolder="range"/>
<input class="required month" placeHolder="month"/>
<input class="required week" placeHolder="week"/>

##Options

#####General

error: "CSS Class Name for errors",
success: "CSS Class Name for successes",
WriteTo: {
	container: "Container element ID to log errors"
},

#####Rules

The object options.date:

date: {
        separator: "/",
        regex: /^(0[1-9]|[1-9]|1[012])[- //.](0[1-9]|[1-9]|[12][0-9]|3[01])[- //.][(19|20)\d\d]|[\d\d]$/,
        message: "Invalid Date - Please ensure date values are within their correct ranges."
		 }

Corresponds to an object within options.rules with the same name (date):

	options.rules: {
  ...

		date: {
            isDate: function(val) {
                var date = parseDate(val);

                return {
                    "message": options.date.message,
                    "status": (date.month > 0 && date.month <= 12) && (date.day > 0 && date.day <= 31) && (date.year.length === 2 || date.year.length === 4)
                };
            },

            matchDateFormat: function(val) {
                return {
                    "message": "Invalid Date - Please ensure the date is in the form mm/dd/yyyy or mm/dd/yy",
                    "status": options.date.regex.test(val)
                };
            }
        }

   ...
}

About

Vanilla JS Input Validation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published