禁用列表项 - angularjs

时间:2016-11-30 08:06:18

标签: html angularjs listitem angularjs-ng-disabled

我在AngularJS中创建了面包屑导航。 应禁用某些链接,因为用户不符合要求。

我已查看了角度文档,我发现您无法在列表项上使用ng-disabled。所以我使用ng-class来清除列表项。 这是我目前使用的HTML代码:

<li id="first">
   <div ng-click="vm.navigateTo(0)">
      <label translate="{{vm.translationKeys[0]}}"></label>
   </div>
 </li>

 <li>
    <div ng-click="vm.navigateTo(1)">
       <label translate="{{vm.translationKeys[1]}}" ng-class="{'hasRequests': vm.programHasRequests == false && vm.currentStepNumber != 1}"></label>
    </div>
 </li>

 <li>
    <div ng-click="vm.navigateTo(2)">
       <label translate="{{vm.translationKeys[2]}}" ng-class="{'hasRequests': vm.hasRequestIdInUrl == false}"></label>
    </div>
 </li>

<li id="last">
   <div ng-click="vm.navigateTo(3)">
      <label translate="{{vm.translationKeys[3]}}" ng-class="{'hasRequests': vm.hasRequestIdInUrl == false}"></label>
   </div>
</li>

是否有办法让ng-disabled在list-items上工作,因为即使应用了ng-class,我仍然可以点击list-items。

感谢您的帮助,

问候,布伦特

1 个答案:

答案 0 :(得分:1)

您无法禁用列表项。您可以使用CSS通过颜色更改禁用列表项。你也可以在javascript上处理它。检查它是否已禁用。然后做流程。

<li>
    <div ng-click="vm.navigateTo(1,vm.translationKeys)">
       <label translate="{{vm.translationKeys[1]}}" ng-class="vm.programHasRequests == false ? 'Redirect':'NotRedirect'"></label>
    </div>
</li>

在&#39; navigateTo&#39;您需要检查第二个参数是否重定向的功能。