如果{{permission}}

时间:2019-03-12 04:38:01

标签: javascript html angularjs

例如,如果权限=用户,则可以禁用href链接

这是我根据权限隐藏元素的示例:

<td ng-hide = "{{main.user}}" ng-show="main.admin">{{I'm hidden}}</td>

如何禁用href?,例如:如果= {{main.user}}

,则禁用href单击
<a class="text-primary" href="stackoverflow">Click Me</a>

1 个答案:

答案 0 :(得分:2)

超链接不支持disabled属性。但是您可以创建一个本质上做相同事情的CSS类,例如:

.disabled {
    cursor: not-allowed;
}

然后有条件地将该类应用于元素:

<a ng-class="{disabled: notAllowed}">Link</a>

notAllowed是根据用户是否具有权限而计算为true或false的表达式。

您可能还想添加一个功能,如果单击链接,该功能将触发,以防止执行默认操作。然后,您可以使用ng-click属性将其添加到元素中:

<a ng-class="{disabled: notAllowed}" ng-click="stopClick($event)">Link</a>

$scope.stopClick = function($event) {
    if ($scope.notAllowed) {
        $event.preventDefault();
    }
}

当然,由于它是客户端,因此用户可以轻松禁用它。但这适用于所有JavaScript。