Варианты форматирования номера телефона
Доброго времени суток, форумчане! Как отформатировать различные номера телефонов? Есть функция, форматирует только мобильный телефон, и шестизначный, возможно ли её сделать более универсальной, например pair1 и pair2 рассчитывать от конца номера, тогда привязка к длине номера не нужна будет.
function formatPhone(phone) { if (phone.length === 11) { var countryCode = phone.slice(0, 1); var operatorCode = phone.slice(1, 4); var triade = phone.slice(4, 7); var pair1 = phone.slice(7, 9); var pair2 = phone.slice(9, 11); return "+"+countryCode + "(" + operatorCode + ")" + triade + "-" + pair1 + "-" + pair2; } if (phone.length === 6) { var countryCode = "7"; var cityCode = "8443"; var pair1 = phone.slice(0, 2); var pair2 = phone.slice(2, 4); var pair3 = phone.slice(4, 6); return "+" + countryCode + "(" + cityCode + ")" + pair1 + "-" + pair2 + "-" + pair3; } return phone; }; |
Если приходит номер 88443454545 то должно отформатироваться так: +7(8443)45-45-45, а на деле форматируется как сотовый номер: +7(844)345-45-45, захарткодить код города не самая удачная идея, коды городов разные приходят...
|
Загугли «jquery mask»
|
Цитата:
Или код города случайно взял? |
ksa,
взломали, и завтра позвонят из "полиции" и скажут, что ваш сын/брат/дочь/сестра задержан за преступление, но можно договорится. ) |
laimas, это номер "Водопроводно-канализационное хозяйство". :D
|
Цитата:
|
Цитата:
|
Цитата:
|
Хотя возможно как то можно... Вот код в котором вызываю вышеописанную функцию
app.fioWithPhoneTpl = function (row) { return "<div><span style='float: left;'>" + formatFio(row.clientFio) + "</span><span style='float: right;'>" + formatPhone(row.clientPhone) + "</span></div>"; }; |
Часовой пояс GMT +3, время: 18:12. |