【发布时间】:2018-03-31 04:58:26
【问题描述】:
我想使用指令将所有输入数据转换为大写。为此,我创建了这个自定义指令:
@Directive({
selector: '[appToUpperCase]'
})
export class ToUpperCaseDirective {
constructor() {}
@HostListener('input', ['$event']) onKeyUp(event) {
event.target['value'] = event.target['value'].toUpperCase();
}
}
我就是这样使用它的:
<form [formGroup]="formGroup" appToUpperCase>
当我在我的字段中输入文本时,它几乎可以正常工作,大写转换是永久的,但焦点设置在字段的末尾......所以当我编辑预填充的输入时,如果我想修改数据的开头,我要在每次Keyup事件后将焦点设置在正确的位置...
我该如何解决这个问题?
【问题讨论】:
标签: angular directive uppercase