允许用户输入所有字母和数字,但是输入特殊字符后,不应在文本框中输入。
我尝试使用(ng-pattern-restrict)进行此操作,但是它没有按预期工作,我认为可能需要将其导入 app-module.ts,但不起作用。
HTML FILE
答案 0 :(得分:1)
通过采用角度的服务和数据绑定方法,这可能会对您有所帮助。
Hello.service.ts
public restrictNumeric(e) {
let input;
if (e.metaKey || e.ctrlKey) {
return true;
}
if (e.which === 32) {
return false;
}
if (e.which === 0) {
return true;
}
if (e.which < 33) {
return true;
}
input = String.fromCharCode(e.which);
return !!/[\d\s]/.test(input);
}
Hello.html
<input type="tel" (keypress)="restrictNumeric($event)">
答案 1 :(得分:0)
@Shashank有一个有效的观点。您要执行的操作是禁用后端的特殊字符输入,并使前端的字段无效。知道他们在做什么的黑客很容易操纵HTTP请求本身而不是字段,从而使其很容易受到攻击。
但是,如果您坚持使用您的解决方案,我建议您使用RegEx。这个sample expression可能派上用场。这样,只要输入字段检测到这些特殊字符之一,它将用''