如何阻止用户输入#'#'字符到input
字段?
我正在努力实现它。
答案 0 :(得分:6)
一种方法是制作一个过滤事物的指令,因此没有任何东西会进入应用程序的模型绑定部分,因为它们无法输入任何东西..下面是你的案例的示例指令
import {Directive, ElementRef, HostListener} from '@angular/core';
@Directive({
selector: '[inputFilter]'
})
export class inputFilterDirective {
constructor(private el: ElementRef) {
}
@HostListener('keydown', ['$event']) onKeyDown(event) {
let e = <KeyboardEvent> event;
if (e.keyCode == 35) {
e.preventDefault();
} else {
return;
}
}
}
我只为数字做过,所以用户除了数字之外无法输入任何其他内容,但我将其修改为hashtag =&gt; hashtag的keyCode为35。
您可以使用此<input inputFilter [(ngModel)]="whatever"/>