html - 如何阻止 <mat-expansion-panel> 用空格键触发?

标签 html angular input material-design

我在面板描述中有一个带有 textarea 框的 mat-accordion。当我在文本区域中绑定(bind)并点击空格键时,它会打开/关闭面板。我怎样才能阻止这个?

<mat-accordion>
  <mat-expansion-panel>
    <mat-expansion-panel-header>
      Header
    </mat-expansion-panel-header>
    <mat-panel-description>
      <mat-form-field>
        <textarea matInput></textarea>
      </mat-form-field>
    </mat-panel-description>
  </mat-expansion-panel>
</mat-accordion>

最佳答案

我发现一种解决方案更干净。仅将其添加到面板标题以覆盖 keydown 事件 SPACE:

(keydown.Space)="$event.stopImmediatePropagation();"
<mat-expansion-panel-header (keydown.Space)="$event.stopImmediatePropagation();">

引用:
https://github.com/angular/components/blob/master/src/material/expansion/expansion-panel-header.ts

关于html - 如何阻止 <mat-expansion-panel> 用空格键触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48957779/

相关文章:

angular - 我的 Angular 8 路线是否因为层次结构太深而无法正常工作?

javascript - 使用正则表达式在字符串 html 中查找链接

javascript - 使用 html/javascript 将焦点设置到表格的第一个单元格

javascript - 使用 JS 以编程方式加载 CSS

Angular 组件继承

javascript - Angular:我有一个带有循环索引的 NgFor,如何将元素的名称指定为 "myName+IndexOfLoop"

javascript - getDocument by id/从按钮获取输入文本不起作用

python - 如果密码正确,如何发现 'Access granted' 被打印了 3 次?

android - 以编程方式获取用于文本输入的不同键盘

html - 固定元素如何仅使用 CSS 将内容推送到页面下方?