尽管该链接被禁用,但它仍然是可点击的。

<a href="/" disabled="disabled">123n</a>

如果它是禁用的,我可以使它不可点击吗?我应该使用JavaScript吗?


当前回答

<a href=“/” disabled=“true” onclick=“return false”>123</a>

只是补充:这在一般情况下工作,但它不会工作,如果用户已经在浏览器中禁用javascript。

1)你可以选择在你的锚标签上使用Bootstrap 3类来禁用href标签,在集成Bootstrap 3插件do之后

< href=“btn btn-primary disabled”>123n</a>

Or

2)学习如何在浏览器中使用html或js启用javascript。 或者创建一个弹出窗口,告诉用户在使用网站之前启用javascript

其他回答

您可以在<a>标记上模拟禁用属性。

<a href=" Link .html" disabled="">Link</a> .html

a[disabled] {
   pointer-events: none;
   cursor: default;
}

<a href=“/” disabled=“true” onclick=“return false”>123</a>

只是补充:这在一般情况下工作,但它不会工作,如果用户已经在浏览器中禁用javascript。

1)你可以选择在你的锚标签上使用Bootstrap 3类来禁用href标签,在集成Bootstrap 3插件do之后

< href=“btn btn-primary disabled”>123n</a>

Or

2)学习如何在浏览器中使用html或js启用javascript。 或者创建一个弹出窗口,告诉用户在使用网站之前启用javascript

我能够使用ng-href三元操作实现所需的结果

<a ng-href="{{[condition] ? '' : '/'}}" ng-class="{'is-disabled':[condition]}">123n</a>

在哪里

a.is-disabled{
   color: grey;
   cursor: default;

   &:hover {
      text-decoration: none;
   }
} 

当您将鼠标移到href标签上时,href标签中的任何内容都将显示在浏览器窗口的左下角。

我个人认为像javascript:void(0)这样的东西显示给用户是可怕的。

相反,关闭href,使用jQuery/其他工具,添加一个样式规则(如果你仍然需要它看起来像一个链接):

a {
    cursor:pointer;
}

你可以通过返回false来禁用锚标记。在我的情况下,我使用angular和ng-disabled的Jquery手风琴,我需要禁用部分。

所以我创建了一个小js片段来解决这个问题。

       <a class="opener" data-toggle="collapse"
                   data-parent="#shipping-detail"
                   id="shipping-detail-section"
                   href="#shipping-address"
                   aria-expanded="true"
                   ng-disabled="checkoutState.addressSec">
                   Shipping Address</a>
     <script>
          $("a.opener").on("click", function () {
           var disabled = $(this).attr("disabled");
           if (disabled === 'disabled') {
            return false;
           }
           });
     </script>