Я использовал плагин jquery mask
в своем приложении для маскировки некоторых полей.Работает нормально.Я должен замаскировать автомобильные номера в бразильском формате (3 буквы и 4 цифры, разделенные -
), а код ниже всегда работал нормально:
$(".car-plate").mask("AAA-0000");
Теперь я должен предоставить новый формат, который увеличитнеобязательное письмо, это означает: AAAA-0000
.Я должен сохранить текущий формат, чтобы быть совместимым.Иногда автомобильная табличка может быть AAA-0000
, а иногда AAAA-0000
.Я пробовал:
var carMaskBehavior = function (val) {
return val.replace(/\W/g, '').length === 8 ? 'AAAA-AAAA' : 'AAA-AAAA';
},
spOptions = {
onKeyPress: function(val, e, field, options) {
field.mask(carMaskBehavior.apply({}, arguments), options);
}
};
$('#car1').mask(carMaskBehavior, spOptions);
Jsbin: https://jsbin.com/zijayiwoxe/edit?html,js,console,output
Я пытаюсь просто буквы, но я не знаю, как исправить это, чтобы определить маску при вводе пользователем текста вформат AAA-9999
или AAAA-9999
.Как я могу это сделать?
Спасибо.