Я хочу, чтобы в моем текстовом поле разрешалось только число, а также лимит символов на нем.Предел символов для ввода текста
В настоящее время у меня есть номера, работающие ... Теперь у меня возникают проблемы с выяснением того, как ограничить символы.
Вот что у меня есть ...
JS:
app.directive('numbersonly', function() {
return {
restrict: 'A',
link: function (scope, elm, attrs, ctrl) {
elm.on('keydown', function (event) {
if (event.which == 64 || event.which == 16 && elm.val().length > 4) {
return false;
} else if (event.which >= 48 && event.which <= 57) {
return true;
} else if (event.which >= 96 && event.which <= 105) {
return true;
} else if ([8, 13, 27, 37, 38, 39, 40].indexOf(event.which) > -1 && elm.val().length > 4) {
return true;
} else {
event.preventDefault();
return false;
}
});
}
}
});
Markup:
<input type="text" id="txtEmpAge" data-ng-model="newemployee.Age" class="form-control" numbersonly required />
Я хочу обрабатывать его в директиве, а не разметке – user4756836
Можете ли вы просто изменить атрибут элемента, который вы передали в вашей функции ссылок, если вы не хотите обрабатывать его в HTML? Я что-то пропустил, потому что я предполагаю, что вам нужно поместить ограничение, которое вы хотите, в изолированную область, которую вам нужно будет поместить в свой HTML в директиве, или вы хотите, чтобы все входные данные были одинаковой длины. – Maccurt
@Maccurt, потому что я использую аналогичную директиву для ввода номера, который не позволяет maxlength и max, похоже, не работает так хорошо – user4756836