[英]How to restrict input field from accepting special characters in Angular?
[英]How to restrict reserved characters in input field using angular8
嗨,我在我的应用程序中使用 angular8,我有一个文件名输入字段,它应该包含字母数字字符,除了保留字符之外,其他特殊字符是允许的。 有什么方法可以为该代码或内联代码提供指令,并且它必须限制粘贴这些保留字符。
不应允许使用以下保留字符:
< (less than)
> (greater than)
: (colon)
" (double quote)
/ (forward slash)
\ (backslash)
| (vertical bar or pipe)
? (question mark)
* (asterisk)
HTML:
<input type="text" class="form-control" placeholder="Custom File Name" name="fileName" autocomplete="off" (keypress)="keyPress($event)">
TS:
public keyPress(event: any) {
const pattern = /[0-9\-\ ]/;
let inputChar = String.fromCharCode(event.charCode);
if (!pattern.test(inputChar) && event.charCode != '0') {
event.preventDefault();
}
}
使用反应形式并清理更改的输入。 适用于复制粘贴和打字。
public restricted = new FormControl();
ngOnInit() {
this.restricted.valueChanges.subscribe((val) => {
const restrictedCharacters = /[-+]/g // Add more restricted characters here
if (restrictedCharacters.test(val)) {
this.restricted.setValue(val.replace(restrictedCharacters, ''))
}
});
}
在您的模板中,将受限表单控件添加到您的输入中。
<input
[formControl]="restricted"
type="text"
placeholder="Custom File Name"
name="fileName"
/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.