Как не вводить цифры 7 и 8 при заполнении номера телефона JQ Masked Input?

$(function(){
    $('.js-phone-field').mask('999-999-99-99');
});

Нужно что бы цифры 7 и 8 не входили в input при наборе... естественно если это первая 7 или 8.


Ответы (1 шт):

Автор решения: Denis640Kb

Можно так:

    $(function(){
        $('.js-phone-field').on('input', function () {
            let val = $('.js-phone-field').val();
            if (val[0] == 8 || val[0] == 7){
                $('.js-phone-field').val(val.slice(1));
            }
        });
        $('.js-phone-field').mask('999-999-99-99');
    });
<script
    src="https://code.jquery.com/jquery-3.4.1.js"
    integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
    crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.16/jquery.mask.js"></script>

<input class="js-phone-field">

Или используя maskedinput таким образом:

    $.mask.definitions['h'] = "[0-6-9]";
    $(".js-phone-field").mask("h99-999-99-99");
→ Ссылка