首页 > 解决方案 > Angular - 如何根据条件禁用特定 DIV 之外的鼠标单击事件?

问题描述

我正在使用生成角度代码的 RAD 工具,并且我想对特定行为进行一些修改。

我有一个网格,我可以通过单击按钮进入特定行的“编辑”模式,现在一旦进入编辑模式,我想完全禁用包含该网格的 div 外部的鼠标单击,因为如果用户单击外部的某些组件网格,在保存他的编辑之前,它会导致一些错误。

因此,当单击“编辑”按钮时,我想在特定 div 之外停止鼠标事件,并且一旦单击“保存”按钮,我想再次允许鼠标事件无处不在。

我没有要显示的代码,因为它只是一些带有一些按钮标签的 html 代码。

我正在寻找的解决方案只是知道这样做的正确方法是什么,然后我可以自己实现它

标签: angularmouseevent

解决方案


您可以执行以下操作。查看代码并找到(click)事件并将 的引用传递MouseEvent给该事件。

模板:

<div (click)="stopEvent($event)"></div>

然后调用:

stopEvent(e: MouseEvent) {
  e.stopPropagation();
}

另一种解决方案是向 div 标签添加禁用:

<div [disabled]="true"></div>

推荐阅读