Frontend
Самая умная форма (маска) валидации телефона (ajax-forms and cache friendly)
Особенность этого валидатора - не важно что вводит пользователь +7 или 8 - всегда будет то что надо.
//jquery mask - required
$APPLICATION->AddHeadScript('//cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js');
if (window.frameCacheVars !== undefined) {
$(document).on('click','.phone-input input, input[type="tel"], .inputphone, #PHONE_FID11',function(){
BX.addCustomEvent("onFrameDataReceived", $('.phone-input input, input[type="tel"], .inputphone, #PHONE_FID11').each(function () {
phonemask2($(this));
}));
});
} else {
$(document).on('click','.phone-input input, input[type="tel"], .inputphone, #PHONE_FID11',function(){
$('.phone-input input, input[type="tel"], .inputphone, #PHONE_FID11').each(function () {
phonemask2($(this));
});
});
}
function phonemask2(thisobj){
thisobj
.focusin(function () {
$(this).attr('placeholder', '+7(___)___-__-__');
})
.focusout(function () {
$(this).attr('placeholder', 'Ваш телефон');
})
.mask(
'+0(000)000-00-00',
{
clearIfNotMatch: true,
onKeyPress: function (cep, event, currentField) {
var phn = cep.replace(/D+/g, "");
//var $submit = currentField.parents('form').find('[type="submit"]');
if (cep.length > 1 && cep.substr(0, 2) != '+7') {
if (cep.substr(0, 2) == '+8') {
currentField.val('+7' + cep.substr(2));
}
else {
currentField.val('+7' + cep.substr(1));
}
}
if (phn.length != 11) {
currentField.removeClass('good-input');
}
if (phn.length == 11) {
currentField.addClass('good-input');
}
}
}
);
}
Афоризм дня:
Книги вводят нас в лучшее общество, знакомят нас с величайшими умами всех времен. (662)
By Admin
On December 31, 2017