我有一个标志按钮,当用户点击时,标志着讨论,之后标志按钮被文本'成功标志'取代。目前,我在点击标志按钮后无法禁用ng-click。 ng-click对于文本'已成功标记'仍然存在,我想阻止点击此文本以防止在标记相同讨论时发生错误。如何在ng-if ng-switch语句内点击后禁用ng-click?
HTML:
<div ng-if="canFlag(discussion)">
<div ng-switch="isFlagging"
ng-disabled="button_clicked"
ng-click="do_something()"
id="flag{{discussion.id}}"
title="{{'flag as inappropriate'}}"
robo-confirm="{'Are you sure you want to flag this?'}"
class="feedActionBtn">
<i ng-switch-when="false"
class="icon-flag"></i>
<div ng-switch-when="true"
translate translate-comment="success message">
Successfully flagged</div>
</div>
</div>
JS:
$scope.isFlagging = false;
$scope.button_clicked = false;
$scope.do_something = function() {
$scope.button_clicked = true;
this.isFlagging = true;
}
通过添加惰性评估或通过防止传播,我也许能阻断do_something()方法被调用,但我我也希望鼠标光标仍然是一个指针,而不是变成“点击链接”鼠标图标,这可能吗?
看起来像鼠标按钮图像是一个css问题,我修正了
我也试过只是在ng-switch-when语句中添加ng-click语句,如下图,但点击后isFlagging仍然是false我没有得到成功的文本:
<div ng-switch-when="false"
ng-click="do_something()"
id="flag{{discussion.id}}"
title="{{'flag as inappropriate'}}"
robo-confirm="{'Are you sure you want to flag this?'}"
class="feedActionBtn">
<i class="icon-flag"></i>
</div>
的[上所有类型的元件的应用的特定条件下禁用纳克单击]可能的复制(http://stackoverflow.com/questions/23194477/disable-ng-click-on-certain-conditions-of-application-for-all-types-of-element) – Luca
以前试过,不行的 – chonglawr