Не добавляется 0 в jquery.mask

125
12 января 2021, 14:00

Хочу сделать маску ( https://github.com/igorescobar/jQuery-Mask-Plugin ) для номера телефона, чтобы всегда в поле было +70 а дальше уже пользователь мог ввести любые свои цифры.

Делаю так:

jQuery(function($) { 
  $('#ph').mask('+70 000-000-00-00'); 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script> 
<input id="ph" />

Но в итоге получается что постоянно есть только +7, а дальше можно вводить любые цифры...

Answer 1

Измените глобальные настройки. Переназначьте 0 на другой символ, а сам 0 удалите оттуда.

jQuery(function($) { 
  $.jMaskGlobals.translation["d"] = $.jMaskGlobals.translation["0"]; 
  delete $.jMaskGlobals.translation["0"]; 
   
  $("#ph").mask('+70 ddd-ddd-dd-dd') 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script> 
<input id="ph" />

Answer 2

Попробуйте так:

$('#ph').mask("+7z 000 000", {
  translation: {
    'z': {
      pattern: /[0]/, optional: false
    }
  }
});
READ ALSO
Динамическое добавление значения в input text

Динамическое добавление значения в input text

Нужно динамически (id будут подставляться автоматически) при клике добавлять значения input в другой inputКак это сделать? Сейчас добавляет только...

113
Получить все данные из таблицы

Получить все данные из таблицы

Помогите пожалуйста написать кодИмеется таблица с 3 формами

113
Как построить дугу из div-блоков?

Как построить дугу из div-блоков?

подскажите, как можно реализовать дугу из дивов(эти части будут выводиться из бд)

104
Проблема при создании сайта no such column: shop_products.date

Проблема при создании сайта no such column: shop_products.date

Хочу создать вывод даты но выдает ошибкуМиграцию сделал

122