Get a Quote Today!   |   + 1 (301) 424 3903




 
  Community
 
Need Help?
Visit our Training page
Request a Quote or Consultation
SIGN UP FOR THE TERATECH NEWSLETTER
 

ColdCuts

Cut: Javascript Integer Test
Cut#: 112 
Cut Date: 01/18/2000 
Cutter: Steve Drucker 
Topic: JavaScript 
Overview:

I need to know thejavascript way to find out if a value is numeric or not.When I call a JavaScript function, I want to check the value of a form field

 

Cut Code:
Try these x-platform JS Functions:



function _CF_checkinteger(object_value)
{
//Returns true if value is a number or is NULL
//otherwise returns false

if (object_value.length == 0)
return true;

//Returns true if value is an integer defined as
// having an optional leading + or -.
// otherwise containing only the characters 0-9.
var decimal_format = ".";
var check_char;

//The first character can be + - blank or a digit.
check_char = object_value.indexOf(decimal_format)
//Was it a decimal?
if (check_char < 1)
return _CF_checknumber(object_value);
else
return false;
}



function _CF_checknumber(object_value)
{
//Returns true if value is a number or is NULL
//otherwise returns false

if (object_value.length == 0)
return true;

//Returns true if value is a number defined as
// having an optional leading + or -.
// having at most 1 decimal point.
// otherwise containing only the characters 0-9.
var start_format = " .+-0123456789";
var number_format = " .0123456789";
var check_char;
var decimal = false;
var trailing_blank = false;
var digits = false;

//The first character can be + - . blank or a digit.
check_char = start_format.indexOf(object_value.charAt(0))
//Was it a decimal?
if (check_char == 1)
decimal = true;
else if (check_char < 1)
return false;

//Remaining characters can be only . or a digit, but only one decimal.
for (var i = 1; i < object_value.length; i++)
{
check_char = number_format.indexOf(object_value.charAt(i))
if (check_char < 0)
return false;
else if (check_char == 1)
{
if (decimal) // Second decimal.
return false;
else
decimal = true;
}
else if (check_char == 0)
{
if (decimal || digits)
trailing_blank = true;
// ignore leading blanks

}
else if (trailing_blank)
return false;
else
digits = true;
}
//All tests passed, so...
return true
}


Alternately, you could use the parseInt() method and isNaN() method to
determine if the field contains a number…