javascript - Angular 6+ - 使用输入文本过滤器处理关键事件
问题描述
我正在开发一个 Angular 应用程序,我们在其中定义了一个文本过滤器组件。
在组件 HTML 文件中
<input type="text" [(ngModel)]="filterText" (input)="valueChange()" (keydown.enter)="myFunction ($event)" />
用户输入文本并在下面按回车时的当前行为是执行顺序。
- 我的函数 ()
- 值变化()
预期valueChange()在myFunction()之前被调用。
任何帮助深表感谢。
这在 IE11+ 和极少数情况下会在其他浏览器中默认发生。
解决方案
您可以使用keyup
这样的事件:
<input type="text" [(ngModel)]="filterText" (input)="valueChange()" (keyup.enter)="myFunction($event)" />
实际上顺序是:keydown
, input
,keyup
推荐阅读
- google-apps-script - 谷歌脚本循环问题
- excel - 如何将数据移动到另一个工作表
- ruby-on-rails - ActionController::RoutingError(没有路由匹配 [POST]
- json - Angular 7 - 无法从资产中读取 JSON 文件
- java - 解析颜色不再使用十六进制值
- flutter - 发布使用颤振创建的桌面应用程序
- pandas - 具有 TimedeltaIndex 的 pandas 数据帧如何按最近的一整天分组?
- python-3.x - 使用 selenium,我如何单击下拉菜单进入 https://www.phptravels.net/ 的登录页面
- jmeter - 如何在 Jmeter 的 Beanshell PostProcessor 中创建一个 Java 程序来合并所有响应?
- ms-access - 从查询中向人员列表发送电子邮件 - 循环问题