首页 > 解决方案 > 无线电输入触发器(单击)事件上的 Angular 2 keydowns

问题描述

我有一个已绑定单击事件处理程序的单选按钮组。我现在正在为键盘用户进行可访问性测试,发现每次按下箭头键都会触发(单击)处理程序并被记录为 MouseEvent。我无法理解为什么会出现这种情况,它会占用我的功能,因为这意味着用户基本上只能选择第一个选项。

任何人都可以阐明这一点吗?

<div class="flex-container neg-margins hidden-sm hidden-xs">
     <div class="flex-child col-md-3 col-sm-4 col-xs-6"

         *ngFor="let option of question.subCats">          
        <!--<label [for]="option.id">{{option.label}}</label>-->
        <input class="choice-input" 
               type="radio" 
               [name]="question.id" 
               [id]="option.id" 
               (keyup.space)="onKey($event, question)"
               (click)="onKey($event)"
               [attr.aria-labelledby]="option.id"
        >
        <div class="c-label-holder" 
             [ngStyle]="{'border-top': highlightColor(option.bdrColor)}" 
             [ngClass]="{'selectedCat': option?.isSelected}"
        >

        </div>
    </div>
</div>

标签: javascriptangulardom-eventsangular2-formsangular2-directives

解决方案


推荐阅读