let allIns = document.querySelectorAll("input");
Inputmask().mask(allIns);
[...allIns].map(el => el.setAttribute('placeholder', "+#(###)-###-####"));
$('#jqp input').inputmask("phone", {
placeholder: '#',
showMaskOnHover: false,
onKeyValidation: function () {
let mt = $(this).inputmask("getmetadata");
$('#jqp span').text(`${mt['cd']} (${mt['cc']})`);
//console.log(mt);
}
});
Inputmask.extendAliases({
my_phone: {
alias: "abstractphone",
placeholder: '#',
phoneCodes: [{
mask: "+987-####",
cc: "zz",
cd: "zzzz",
desc_en: "Moon!",
name_ru: "яяя",
desc_ru: ""
}, {
mask: "+789-###",
cc: "yy",
cd: "Y-Y",
desc_en: "Sun!"
}],
onKeyValidation: function() {
let mt = $(this).inputmask("getmetadata");
$('#jqma span').text(mt['desc_en']).css('color',
`#${Math.floor(Math.random() * 0x1000000).toString(16).padStart(6, 0)}`);
//console.log(mt);
}
}
});
$('#jqma input').inputmask("my_phone");
span {color:#37e;font-weight:bold}
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/inputmask.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/inputmask.extensions.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/inputmask.phone.extensions.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/jquery.inputmask.js"></script>
<script src="https://rawgit.com/RobinHerbots/jquery.inputmask/4.x/dist/inputmask/phone-codes/phone.js"></script>
<p>
<label>Old simple HTML data + JS:
<input type="text" data-inputmask="'mask': '+9(999)-999-9999', 'showMaskOnHover': false, 'placeholder': '#'" >
</label>
</p>
<p id="jqp"><label>jQuery phone extension alias: <input/></label> <span/>
</p>
<p id="jqma"><label>jQuery extended phone alias: <input/></label> <span/>
</p>