Друзья, подскажите, как прописать маску ввода телефона такого вида:
+7 (___) ___-__-__
Сейчас у меня выводится так и не совсем меня устраивает:
___ ___-__-__
Ну и что бы сама маска, проявлялась, только после клика по полю ввода номера.
Вот текущий код :
// маска телефона//
function clearVal(val, limit){
var newVal = val.replace(/[^\d]+/g, '');
if( newVal == '' ){
return false;
}else{
return newVal.substring(0, limit);
}
}
function getResString(newVal){
var res = '';
for(var i = 0; i < newVal.length; i++){
if( i == 3 ){
res += ' ';
res += newVal.charAt(i);
}else if( i == 6 || i == 8 ){
res += '-';
res += newVal.charAt(i);
}else{
res += newVal.charAt(i);
}
}
return res;
}
$(function(){
$('#customer_phone').on('input', function(){
var val = $(this).val(),
limit = 11;
if( val == '' ) return;
var newVal = clearVal(val, limit);
if(!newVal){
$(this).val('');
return;
}
var res = getResString(newVal);
$(this).val(res);
});
});
// маска телефона//
$(".forms").submit(function(){
$.ajax({
type:"POST",
url:"mail.php",
data: $(this).serialize()
})
.done(function(){
alert("Спасибо за заявку! Специалист свяжется с вами в ближайшее время.");
setTimeout(function(){
$.magnificPopup.close();
$(".forms").trigger("reset");
}, 1000);
});
return false;});