使用 (focus) 检索输入的值

Sox*_*x - 2 html focus typescript angular

我的输入看起来像这样:

<mat-form-field>
  <input 
    matInput 
    placeholder="A blablabla" 
    required 
    (focus)="focusIn($event)" 
    (focusout)="focusOut($event)" 
    [(ngModel)]="A.txt1" 
    (ngModelChange)="onChange()"
    (keypress)="numberOnlyMin($event)">
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)

我的方法是:

focusIn(event: FocusEvent) {
  console.log(event.detail);
}

focusOut(event: FocusEvent) {
  console.log(event.detail);
}
Run Code Online (Sandbox Code Playgroud)

基本上我想在完成编写后立即检索输入的值,这就是我使用focusOut.

但是我每次都检索到0,有什么原因吗?

以及如何在这两个焦点之间传递数据?

谢谢 !

Sid*_*era 5

从帖子来看,我相信您的主要目的是实际知道用户何时完成输入字段中的某些内容的更改,然后使用该值。

您可以使用该(change)事件来了解现场发生变化的时间。

仅当您将注意力从输入上移开并且输入值发生变化时,才会触发此操作。因此,您实际上不必监听所有其他事件。

如果即使输入值没有变化您仍然希望收到通知,那么使用(blur)事件将是理想的选择。


这是一个StackBlitz 工作示例供您参考。