Варианты форматирования номера телефона
Доброго времени суток, форумчане! Как отформатировать различные номера телефонов? Есть функция, форматирует только мобильный телефон, и шестизначный, возможно ли её сделать более универсальной, например 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, время: 20:36. |