javascript - 如何禁用跨度标签上的点击事件 - Angular 6
问题描述
我想根据条件禁用带有“X”符号的“删除小时”的点击事件。提前致谢。
<table navigatable class="<some_class>">
<tbody>
<tr *ngFor="let item of list; let i=index">
<td style="width: 95%">{{item}}</td>
<td style="width: 5%">
<span class="<some_class>" (click)="DeleteHour(i)">X</span>
</td>
</tr>
</tbody>
</table>
解决方案
我认为您可以在 DeleteHour(i) 中使用“提前返回”来禁用该操作。
const DeleteHour = (i) => {
if (isDisabled(list[i])) return;
// ...rest of the function
}
对于“视觉上禁用”部分,我想如果它被禁用,它就像改变视觉上的东西。如果是,您可以执行以下操作:
<span class="<some_class>" (click)="DeleteHour(i)">{{ isDisabled(item) ? '' : 'X' }}</span>
您可以(也许应该)也使用按钮并使用 css 伪类delete-hour:disabled { ...styles }
:
<button class="delete-hour" (click)="DeleteHour(i)" [disabled]="isDisabled(item)">X</button>
推荐阅读
- java - Java没有得到shell启动程序的输出
- c# - 获取处理选项 获取数据银行卡 (pscs-sharp)
- python - 当数据帧的标头包含字符串时,在两个数据帧之间映射数据
- javascript - 如何让 Apollo 客户端重新获取特定查询?
- git-lfs - 我重命名文件后,git lfs 无法跟踪文件
- r - 如何在 RShiny 中生成此图形?
- typescript - 如何将 typescript 支持添加到 vue 的 CDN 版本?
- sql - Snowflake SQL 编译器和执行有多懒惰?
- javascript - 在 Xcode 12 上测试时出错:没有更多行可用
- android - 使用房间预填充数据库会创建具有错误架构的数据库