angular - Keydown 事件不适用于 Angular 中的选项
问题描述
我有以下代码,当用户按下回车键以从选项中进行选择时,需要触发一个函数。
如果我使用 (click) 事件,一切都会按预期工作,但这只会在点击时执行功能,这对 UX 来说不是很好。
<form (ngSubmit)="onCreatePost(formData.value)" #formData="ngForm" autocomplete="off" class="form">
<select name="name" ngModel>
<option value="" disabled selected>Choose language</option>
<option *ngFor="let language of languageList" (keydown.enter)="getLanguageCode(language.code)">{{ language.name }}</option>
</select>
<input type="text" name="code" [ngModel]="langCode">
<button type="submit" class="button-primary" [disabled]="!formData.valid"><i class="fas fa-plus-circle margin"></i>Submit</button>
</form>
解决方案
尝试使用(keydown.enter)
onselect
而不是每个选项。我在表格上使用它并且工作正常。
推荐阅读
- javascript - 获取链接函数中单击元素的数据属性
- php - CodeIgniter - 完成输入后检查用户输入的电子邮件,以确认是否被接受
- c - 理解一些基本链表函数的问题
- javascript - 如何从另一个文件导入另一个文件?
- css - 使用 Bootstrap 在表格中将文本右对齐
- c# - WPF - 在 Windows 10 中更改“使文本变大”设置时接收事件
- c# - C# 重构 - 如何传递可能有多个参数的泛型方法?
- arrays - 使用 Google Apps 脚本将获取的 API 中的对象数组与分页合并
- java - 添加通过单元测试的方法
- mysql - 使用 sortorder 的父子关系的 SQL 查询排序依据