Keydown事件在Angular中的选项上不起作用
我有以下代码,需要在用户按下enter键从选项中进行选择时触发一个函数 如果我使用(click)event,一切都会按预期工作,但是这只会在单击时执行函数,这对用户体验来说不是很好Keydown事件在Angular中的选项上不起作用,angular,angular-forms,Angular,Angular Forms,我有以下代码,需要在用户按下enter键从选项中进行选择时触发一个函数 如果我使用(click)event,一切都会按预期工作,但是这只会在单击时执行函数,这对用户体验来说不是很好 <form (ngSubmit)="onCreatePost(formData.value)" #formData="ngForm" autocomplete="off" class="form"> <selec
<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>
选择语言
{{language.name}
提交
尝试使用(向下键。回车)
在上选择而不是每个选项。我在表单上使用了它,效果很好。
var-app=angular.module(“myapp”,[]);
应用程序指令('myEnter',函数(){
返回函数(范围、元素、属性){
元素绑定(“按键按下”,函数(事件){
if(event.which==13){
警报(“按下回车键”);
event.preventDefault();
}
});
};
});代码>
尝试在select元素上添加onchange事件侦听器。无论是使用鼠标还是键盘选择选项,都应触发onchange事件