Проблема с маской для input

142
16 февраля 2019, 09:00

Проблема с input и библиотекой для маски на input jQuery Mask Plugin

1) Мне нужно удалить из телефона если его печатают с число 7 или 8 щас работает нормально. Но проблема возникает когда вставляют телефон из буфера обмена, то работает не корректно. Подскажите пожалуйста как можно исправить или решить с помощью другого плагина.

Фаил js

$(function(){
    $('#js-phone').mask("+7 (999) 999-99-99");
    $('#js-phone').on('keyup', function(event) {
       let $this = $(this).val()    ;
       let phone = '';
       if($this[5] == '9') {
          if($this[4] == '8' || $this[4] == '7') {
            phone = $this.slice(0,4) + $this.slice(5);
            $(this).val(phone);
          }
      }
   });
});
Answer 1

Немного костыльно, но работает, демка

$(function(){
    $('#js-phone').mask("+7 (999) 999-99-999");
    $('#js-phone').on('keyup', function(event) {
    reserveVal = $(this).cleanVal();
    phone = $(this).cleanVal().slice(0,10);
    $(this).val($(this).masked(phone));
       if($(this).cleanVal()[1] == '9') {
          if($(this).cleanVal()[0] == '8' || $(this).cleanVal()[0] == '7') {
            phone = reserveVal.slice(1);
            $(this).val($(this).masked(phone)); 
          }
      }
   });
});
READ ALSO
html5 Background

html5 Background

Работаю над тем, что бы страница загружалась с опозданиемПодумал, что для этого можно поставить ( background-image ), и при запуске сайта, с начало...

134
Создание элементов в java Script

Создание элементов в java Script

Подскажите как более продуктивно создавать громоздкие элементы в JS, например всплывающее окно с инпутами - делать это через documentcreateElement или...

181
Как узнать позицию скролла внизу?

Как узнать позицию скролла внизу?

если надо к примеру сделать кнопку навверх, то идет scrollTop: 0, ибо 0 - начала документаА если сделать наооборот

156