首页 > 解决方案 > 如何处理特定页面提交按钮的 Enter 按键功能 - Angular?

问题描述

我已经实现了一个功能,例如,在表单中的任何位置单击输入键时,它应该点击提交按钮。现在这个功能工作正常,但问题出在我的表单之上,一个模式窗口将在某些情况下打开。在那个窗口上,如果用户点击输入,它会点击后台表单提交按钮。在这里,我期待在关闭模式之前它不应该点击提交按钮。在这里,我无法控制模态上的 Enter 键。

这是我的代码片段:

@HostListener('document:keydown', ['$event'])
  keyboardInput(event: KeyboardEvent) {
    this.onKeydown(event);
  }
  
  onKeydown(event:KeyboardEvent):void {
    if (event.keyCode === 13) { 
    this.submit();
    }
  }

标签: javascriptangular

解决方案


您需要修改您的条件以检查模态是否打开

if (event.keyCode === 13 && isModalOpen)  //maintain the state of modal in isModalOpen property
    this.submit()
else
    this.modalSubmit();

推荐阅读