[英]Angular2 md-autocomplete : How to manage onkeydown?
我在應用程序中實現了Angular2材質自動完成功能。 我現在正在尋找一種方法來正確管理keydown.enter
功能。
因為下面的單擊功能可以按我期望的方式工作,所以我自然嘗試了:
<md-input-container>
<input type="text" placeholder={{appName}} mdInput [formControl]="term" [mdAutocomplete]="auto">
</md-input-container>
<md-autocomplete #auto="mdAutocomplete" md-focus>
<md-option *ngFor="let item of items" [value]=item.title (click)="loadData(item)" (keydown.enter)="loadData(item)">
<span>{{item.title}}</span>
</md-option>
</md-autocomplete>
但是該功能未觸發。 如果我在md-input-container
移動keydown.enter
函數,如下所示:
<md-input-container >
<input type="text" placeholder={{appName}} mdInput [formControl]="term" [mdAutocomplete]="auto" (keydown.enter)="loadData(item)">
</md-input-container>
<md-autocomplete #auto="mdAutocomplete" md-focus>
<md-option *ngFor="let item of items" [value]=item.title (click)="loadData(item)">
<span>{{item.title}}</span>
</md-option>
</md-autocomplete>
它可以工作,但是后來我再也無法訪問我的item元素了...
我敢肯定有一個簡單的方法可以解決此問題,但我一直無法弄清楚。 如何在md-input-container
獲取我的item對象?
這是一個柱塞。
您可以通過調用(onSelect)="loadData(item)"
而不是'click'和'keydown'函數來在md-option中獲取所選項目。
編輯:正如下面約書亞指出的那樣,您現在應該調用onSelectionChange
事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.