【问题标题】:Blur the mat-select angular material模糊垫选择角度材料
【发布时间】:2019-10-27 08:16:40
【问题描述】:

我有一个带有 mat-select 和输入的表单,当点击 enter 时会模糊表单的所有元素并执行搜索功能。当我在 mat-select 中选择一个选择并按 Enter 键时,mat-select 仍然专注于它,因此它在搜索功能运行时打开。我需要一个模糊 mat-select 的功能(下面的 mat-select 是灰色而不是紫色)以防止它们在我单击 enter 时打开。

我的代码: https://stackblitz.com/edit/angular-focus-select-afterload-n99bzu?file=main.ts

感谢关注!

【问题讨论】:

  • 显示您的代码。
  • 对不起,我已经更新了帖子。

标签: angular angular-material


【解决方案1】:

你必须使用

this.myForm.disable();

如果您只想禁用下拉菜单,则要禁用您的表单,那么您必须调用

this.myForm.controls['category_food'].disable()

然后根据您的逻辑启用它(我在 3 秒后启用它)。我已经编辑了你的 stackblitz here。如果这回答了您的问题,则标记为接受,如果有疑问,请在 cmets 中询问,我们很乐意为您提供帮助。

【讨论】:

  • 我的意思是我需要模糊垫选择的代码,就像你输入输入(
    ) 并按 Enter 但 mat-select 不适用于 $event.target.blur();.
  • 是的,您不能使用事件对象模糊元素,因为事件对象仅携带有关已触发事件的信息(在此处输入 keyup 事件)。如果你想禁用元素,你可以在打字稿中有一个元素引用,并可以通过它禁用。另一种方法是我在 [这里] (stackblitz.com/edit/angular-focus-select-afterload-wem6xp) 实现的
猜你喜欢
  • 2021-02-17
  • 2018-04-30
  • 2020-07-05
  • 2019-03-11
  • 2022-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多