In this blog, I am going to explain about validating phone number text box in ASP.NET using Java Script.
Create a Text Box control, given below.
<asp:TextBox ID="txtPhoneNumber" runat="server" Height="18px" Width="129px"
onchange = "this.value = ValidatePhone(this);"></asp:TextBox>
onchange() is used to call a JavaScript function, named as ValidatePhone(). Pass the TextBox control as an argument.
I use Regular Expression to validate phone number. Java Script function could be
function ValidatePhone(phonenumber) {
var regex = /^\(?([2-9][0-8][0-9])\)?[-. ]?([2-9][0-9]{2})[-. ]?([0-9]{4})$/;
if (regex.test(phonenumber.value)) {
var newPhoneNumber = phonenumber.value.replace(regex, "($1) $2-$3");
return newPhoneNumber;
} else {
alert(" Invalid phone number");
return phonenumber.value;
}
}
The basic Rules of Valid phone numbers according to the North American Numbering Plan are,
- Area codes start with a number from 2–9, followed by 0–8, and then any third digit.
- The second group of three digits, known as the central office or exchange code, starts with a number from 2–9, followed by any two digits.
- The final four digits, known as the station code, have no restrictions.
These rules can easily be implemented with a few character classes:
^\(?([2-9][0-8][0-9])\)?[-. ]?([2-9][0-9]{2})[-. ]?([0-9]{4})$
Generally, the phone number format includes
4125671234
, 412-567-1234
, 412.567.1234
, 412 567 1234
, (412) 567 1234
, and all related combinations. If the phone number is valid, you can convert it to your standard format, (412) 567-1234 for maintaining consistency. This can be done by using replace() method. The replacement is
($1) $2-$3. Now the phone number will be changed into (412) 567-1234.Happy Coding!!!