gpt4 book ai didi

angular - 允许用户在 Angular 6 中仅输入 mat-autocomplete 中的选项

转载 作者:行者123 更新时间:2023-12-02 17:07:44 24 4
gpt4 key购买 nike

我正在使用 mat-autocomplete。

<form class="example-form">
<mat-form-field class="example-full-width">
<input type="text" placeholder="Pick one" aria-label="Number" matInput [formControl]="myControl" [matAutocomplete]="auto">
<mat-autocomplete #auto="matAutocomplete">
<mat-option *ngFor="let option of options" [value]="option">
{{ option }}
</mat-option>
</mat-autocomplete>
</mat-form-field>
</form>

想知道是否有一种方法可以限制用户只能输入下拉列表中提供的选项,即。只有一、二和三。当用户键入任何其他内容,如 sixteen 时,不应显示它

 export class AutocompleteSimpleExample {
myControl: FormControl = new FormControl();

options = [
'One',
'Two',
'Three'
];

}

最佳答案

您可以绑定(bind)到模糊事件并检查输入值是否等于所需的输入,如下所示。我在自己的自动完成中使用了类似的方法。

<input type="text" placeholder="Pick one" aria-label="Number" matInput [formControl]="myControl" (blur)="InputControl($event)" [matAutocomplete]="auto">

在组件中

InputControl(event) {
setTimeout(() => {
let isValueTrue = this.options.filter(myAlias =>
myAlias === event.target.value);
if (isValueTrue.length === 0) {
this.form.get(‘MyControl’).setValue(null);
}
}, 300);
}

关于angular - 允许用户在 Angular 6 中仅输入 mat-autocomplete 中的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50794298/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com