我想使用指令將所有輸入數據轉換爲大寫字母。爲了實現這一目標,我創建這個定製指令:指向大寫字母輸入字段
@Directive({
selector: '[appToUpperCase]'
})
export class ToUpperCaseDirective {
constructor() {}
@HostListener('input', ['$event']) onKeyUp(event) {
event.target['value'] = event.target['value'].toUpperCase();
}
}
我用它這樣的:
<form [formGroup]="formGroup" appToUpperCase>
當我在字段中輸入文本它的工作原理差不多好了exept的是,上殼變換但是焦點設置在字段的末尾......因此,當我編輯預先填充的輸入時,如果要修改數據的開始,我必須在每個Keyup事件之後將焦點設置在正確的位置。 ..
我該如何解決呢?
問題是,CSS以大寫顯示數據,但不轉換該值。我有許多頁面有很多窗體,所以我想要一個簡單的方法將傳入的數據轉換爲大寫字母以顯示在模型中。這就是爲什麼我使用了指令 –
@JulienAZEMA的原因我會用這個,你得到了視覺外觀,看起來你有一個表單,所以你可以做的是,在提交時你可以迭代表單對象屬性和轉換他們大寫:) – Alex