Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to format a phone number with jQuery

I'm currently displaying phone numbers like 2124771000. However, I need the number to be formatted in a more human-readable form, for example: 212-477-1000. Here's my current HTML:

<p class="phone">2124771000</p> 
like image 836
Xtian Avatar asked Jan 06 '12 15:01

Xtian


2 Answers

Simple: http://jsfiddle.net/Xxk3F/3/

$('.phone').text(function(i, text) {     return text.replace(/(\d{3})(\d{3})(\d{4})/, '$1-$2-$3'); }); 

Or: http://jsfiddle.net/Xxk3F/1/

$('.phone').text(function(i, text) {     return text.replace(/(\d\d\d)(\d\d\d)(\d\d\d\d)/, '$1-$2-$3'); }); 

Note: The .text() method cannot be used on input elements. For input field text, use the .val() method.

like image 57
Andreas Louv Avatar answered Sep 25 '22 13:09

Andreas Louv


var phone = '2124771000',     formatted = phone.substr(0, 3) + '-' + phone.substr(3, 3) + '-' + phone.substr(6,4) 
like image 22
Marc B Avatar answered Sep 23 '22 13:09

Marc B