Используется версия Маска ввода vanilla js.
Возникли проблемы с разоблачением формата даты и времени:
var expDate = document.getElementById('expDate');
Inputmask({
alias: 'datetime',
inputFormat: 'mm/yy',
placeholder: 'month/year',
autoUnmask: true,
clearMaskOnLostFocus: false
}).mask(expDate);
autoUnmask не работает, expDate.value возвращает 12/12, хотя должен возвращать 1212.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


outputFormat: ddmm делает то, что мне нужно, но это не упоминается в документации этого плагина.
Я создал минимальный пример, и опция autoUnmask работает, возможно, есть какие-то конфликты с псевдоним: 'datetime' или inputFormat: 'мм / гг'. Прочтите следующую документацию, доступную на веб-сайте плагина:
псевдонимы
С помощью псевдонима вы можете определить сложное определение маски и вызвать его, используя псевдоним. Это сделано в основном для упрощения использования масок. Некоторые псевдонимы в расширениях: электронная почта, валюта, десятичное, целое число, дата, дата и время, дд / мм / гггг и т. д.
Сначала вам нужно создать определение псевдонима. Определение псевдонима может содержать параметры маски, пользовательские определения, используемую маску и т. д.
Когда вы передаете псевдоним, сначала разрешается псевдоним, а затем применяются другие параметры. Таким образом, вы можете вызвать псевдоним и передать другую маску, которая будет применяться к псевдониму. Это также означает, что вы можете писать псевдонимы, которые «наследуются» от другого псевдонима.
Некоторые примеры можно найти в jquery.inputmask.xxx.extensions.js
формат
Вместо маскировки элемента ввода также можно использовать маску ввода для форматирования заданных значений. Подумайте о форматировании значений для отображения в jqGrid или других элементах, кроме входных.
var formattedDate = Inputmask.format ("2331973", {псевдоним: "datetime", inputFormat: "дд / мм / гггг"});
Как видите, дата и время - это определенный псевдоним (вы можете проверить определение на inputmask.date.extensions.js), а inputFormat используется для других целей. В следующем примере есть один вход с параметром autoUnmask, настроенным на правда, а другой со значением по умолчанию ложный:
// Get the inputs fields
var expDate1 = document.getElementById('expDate1');
var expDate2 = document.getElementById('expDate2');
// Apply masks on the inputs.
Inputmask({
alias: 'date',
autoUnmask: true,
clearMaskOnLostFocus: false
}).mask(expDate1);
Inputmask({
alias: 'date',
clearMaskOnLostFocus: false
}).mask(expDate2);
// Alert values.
function getValuesFromInputs()
{
var msg = "Value of Input1 with autoUnmask=true: " + expDate1.value;
msg += "\n"
msg += "Value of Input2 with autoUnmask=false: " + expDate2.value;
alert(msg);
}<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/dependencyLibs/inputmask.dependencyLib.js"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.js"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.extensions.js"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.4/inputmask/inputmask.date.extensions.js"></script>
<input type = "input" id = "expDate1"/>
<input type = "input" id = "expDate2"/>
<button type = "button" onclick = "getValuesFromInputs()">Get Values</button>