Ниже приведена моя угловая директива js, которая допускает только алфавитные символы, но проблема в том, что она отключает capslock / space. Цель состоит в том, чтобы не вводить специальные символы и цифры в качестве входных данных только для алфавита, но не отключать capslock / space / shift, поскольку в приложении пользователь может вводить свое имя заглавными буквами. Есть идеи ?. Я использую директиву по сравнению с библиотекой ng-pattern.
app.directive('validEn', function () {
return {
require: '?ngModel',
link: function (scope, element, attrs, ngModelCtrl, SweetAlert) {
if (!ngModelCtrl) {
return;
}
ngModelCtrl.$parsers.push(function (val) {
var clean = val.replace(/[^a-z]+/g, '');
console.log("sfdsfd")
if (val !== clean) {
ngModelCtrl.$setViewValue(clean);
ngModelCtrl.$render();
}
return clean;
});
element.bind('keypress', function (event) {
if (event.keyCode === 32) {
event.preventDefault();
}
});
}
};
});