function cc_format(value) {
var v = value.replace(/\s+/g, '').replace(/[^0-9]/gi, '')
var matches = v.match(/\d{4,16}/g);
var match = matches && matches[0] || ''
var parts = []
for (i=0, len=match.length; i<len; i+=4) {
parts.push(match.substring(i, i+4))
}
if (parts.length) {
return parts.join(' ')
} else {
return value
}
}
/* такой вариант не работает. никаких ошибок в консоле нет. */
onload = function() {
var inputus = document.querySelectorAll(".cardNumber");
for (i = 0; i < inputus.length; i++) {
inputus[i].addEventListener.oninput = function() {
this.value = cc_format(this.value)
}
}
}
/* такой вариант не работает. никаких ошибок в консоле нет. */
function checkDigit(event) {
var code = (event.which) ? event.which : event.keyCode;
if ((code < 48 || code > 57) && (code > 31)) {
return false;
}
return true;
}
i
? Попробуйте так:for (let i = 0, len = match.length; i < len; i += 4) {
parts.push(match.substring(i, i + 4));
}
addEventListener.oninput = function()
. Попробуйте так:inputus[i].addEventListener('input', () => {
this.value = cc_format(this.value);
});
for (let i = 0; i < inputus.length; i++) {
inputus[i].addEventListener('input', function() {
this.value = cc_format(this.value);
});