Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
163
rated 0 times [  169] [ 6]  / answers: 1 / hits: 86970  / 15 Years ago, tue, february 9, 2010, 12:00:00

Please help with me writing a JavaScript Validation for currency/money field.



So please provide any regular expressions if u have :)



Also, for my region, don't need any currency symbols like '$' in the field.



Only decimals are to be included for validation as special chars., along with numbers.


More From » validation

 Answers
4

You could use a regexp:



var regex  = /^d+(?:.d{0,2})$/;
var numStr = 123.20;
if (regex.test(numStr))
alert(Number is valid);


If you're not looking to be as strict with the decimal places you might find it easier to use the unary (+) operator to cast to a number to check it's validity:



var numStr = 123.20;
var numNum = +numStr; // gives 123.20


If the number string is invalid, it will return NaN (Not a Number), something you can test for easily:



var numStr = ab123c;
var numNum = +numStr;
if (isNaN(numNum))
alert(numNum is not a number);


It will, of course, allow a user to add more decimal places but you can chop any extra off using number.toFixed(2) to round to 2 decimal places. parseFloat is much less strict with input and will pluck the first number it can find out of a string, as long as that string starts with a number, eg. parseFloat(123abc) would yield 123.


[#97623] Saturday, February 6, 2010, 15 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
josefn

Total Points: 251
Total Questions: 93
Total Answers: 84

Location: Senegal
Member since Fri, Aug 21, 2020
4 Years ago
;