I want to mask my javascript variable value.Basically i am getting phone number fields value in variable and after getting it i want to mask it in some other format.
I have tried the jquery Mask plugin but its mask the control's string format.But i want to mask the string into the variable.
Ex:
Let i have a phone string "0000000000"
and i am storing it in a variable :-
var number ="0000000000"
and after that i want to mask it in other formats.Like-
1) number = number.mask('000-0000'); 2) number = number.mask('(000) 000-0000');
There is a similar question (Javascript phone mask for text field with regex).
You can do it using regular expressions (see the code working at http://jsfiddle.net/BBeWN/45/):
var value = '1234567';
var formatted = value.replace(/^(\d{3})(\d{4}).*/, '$1-$2');
Notice that each part of the regular expression that is wrapped within parenthesis, (\d{3})
and (\d{4})
in the example above, can then be referenced to build the formatted text string using $1
and $2
respectively.
If you have N parts of the regular expression wrapped within parenthesis, you would be able to reference them to build a formatted text string with $1
, $2
, ..., $N
respectively.
So, for the other format you mention ((000) 000-0000), the code would be like this:
var formatted = value.replace(/^(\d{3})(\d{3})(\d{4}).*/, '($1) $2-$3');
You can find a great JavaScript regular expressions reference at https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions