Validating Numerical Input with JavaScript
By David Morse
Posted Monday, December 6, 2004
What? Make a mistake entering data? Who me? NO WAY! Right…
Every form of data input by a user should be validated in some form or fashion. If you get
clean data in, you won’t get garbage out. This tutorial is going to explain how to validate
numerical data entered into a form using JavaScript.
First, let us begin with the code to insert the JavaScript into your HTML document.
Place these lines between the and tags.
This line tells the web browser to expect some JavaScript code and signal the beginning of
the script:
Next let us hide the code from web browsers that are not capable of reading the script with
this line:
So now the format should look something like this:
My Title
Now on to validating the numerical input.
First we will create a function with one arument:
function validate(mydata){
These lines will test for a blank enty then prompt the user for input:
if (mydata == ""){
alert("Please enter a number.")
}
Next we will create a for loop which will look at each character in the data until it
reaches the end:
for(var i=0;i < mydata.length;i++){
Now create a variable and assign the counter variable value to it:
var mydigit = mydata.charAt(i)
To screen out symbols, punctuation, and letters, place an if statement in the loop:
if(mydigit < "0" || mydigit > "9"){
The || in the if statement scans for both conditions.
The next line will alert the user to any mistakes he/she has made:
alert(mydigit + " is not a number.")
Here is the complete code including HTML:
=============================================
Numerical Validation
Guess a number between 1 and 1000:
=============================================
You can test the above code by copying and pasting it into a text document then view it in
your browser.
And that's how easy it is to test user input for numerical input.
(c)2004 BiosBrain
About the Author
David Morse is the owner of (http://www.biosbrain.com) which is a full service support site featuring articles on programming, graphics, web-based business and more! Come visit us today!