当前位置: 首页 > 知识库问答 >
问题:

每个按键上的角度2更改事件

唐钊
2023-03-14

更改事件仅在输入的焦点更改后调用。如何使事件在每次按键时触发?

<input type="text" [(ngModel)]="mymodel" (change)="valuechange($event)" />
{{mymodel}}

第二个绑定在每个按键上改变btw。

共有3个答案

逄念
2023-03-14

让我们看看原因:

  1. (更改)就像你提到的,只有当输入失去焦点时才触发,因此用处有限。
  2. (键盘)在按键时触发,但在某些击键时不触发,如退格。
  3. (keydown)每次按下一个键都会触发。因此总是滞后1个字符;因为它在击键注册之前获得元素状态。
  4. (keyup)是你最好的选择,因为它会在每次按键推送事件完成时触发,因此这也包括最近的字符。
  • 在每次击键时注册一个事件,而不是(更改)事件
  • 包括(按键)忽略的按键
  • 与(按下键)事件不同,没有延迟
盛浩阔
2023-03-14

使用ngModelChange[(x)]语法分解为两个部分,即属性数据库绑定和事件绑定:

xml prettyprint-override"><input type="text" [ngModel]="mymodel" (ngModelChange)="valuechange($event)" />
{{mymodel}}
valuechange(newValue) {
  mymodel = newValue;
  console.log(newValue)
}

它也适用于退格键。

梁丘俊材
2023-03-14

我刚刚使用了事件输入,它工作得很好,如下所示:

在. html文件中:

<input type="text" class="form-control" (input)="onSearchChange($event.target.value)">

在. ts文件中:

onSearchChange(searchValue: string): void {  
  console.log(searchValue);
}
 类似资料:
  • 我的组件具有以下功能: 我可以在我的html页面中插入选择菜单,但更改事件不会在我选择项目时触发。有人能让我知道为什么会发生这种情况吗? 谢谢

  • 每当选择项目时,我都必须传递选项的值。但在我的事件发生后,传递的值总是未定义的。我的代码如下: 我的angular2代码如下: 问题是,每当选项发生任何更改时,传递给handle函数的参数(值)总是“未定义”。 在这一行中,参数“value”的值始终未定义。 请帮帮忙! 提前感谢!

  • 问题内容: 是否有可能结合按键的组合来触发单个事件? 我已经在Chrome浏览器中尝试过,但该事件不会触发。 称我为疯狂,但我正在编写Chrome扩展程序,并希望同时按下+ + 键将其强制为隐藏的开发人员模式。 问题答案: 如果要检测的,和钥匙都在同一时间全部下来,你得看都和并保持地图为down的那些的。当他们全都崩溃时,请触发您的事件。 我假设您不关心它们按什么顺序按下(因为要可靠地按一下会很痛

  • 我有一个父组件和子组件,其中父组件通过@Input修饰符将对象传递给子组件。问题是,子级只获取父级数据一次,然后在将来更改传递给子级的父属性后,不会更新该值。

  • 本文向大家介绍Atitit.js的键盘按键事件捆绑and事件调度,包括了Atitit.js的键盘按键事件捆绑and事件调度的使用技巧和注意事项,需要的朋友参考一下  1. Best的方法还是 2. Event bind 3. Event dispatch js中获取键盘事件 只要你定义了这些键的动作,你在浏览器里按下这些键就会响应,兼容目前所有浏览器。 js 里面的键盘事件经常用到,所以收集了键盘

  • 使用Angular 2更改值时,如何调用方法? 我尝试使用ng change,但没有成功。