我的指令如下。我想要的是允许字母字符和特殊字符,但不允许数字。我们如何根据下面的代码进行更改。谢谢。
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|^A-z|^\s]+/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();
}
});
}
};
});
答案 0 :(得分:2)
您需要更改您的regex语句,以便它用空字符串替换所有数字,例如:
var clean = val.replace(/\d*/g, '');