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

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

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


当前回答

我们不能直接禁用它,但我们可以这样做:

添加类型=“按钮”。 删除href=""属性。 添加disabled属性,这样它就会显示通过更改游标而禁用游标并使游标变暗。

PHP的例子:

<?php
if($status=="Approved"){ 
?>
  <a type="button" class="btn btn-primary btn-xs" disabled> EDIT
     </a>
  <?php    
}else{
?>
  <a href="index.php" class="btn btn-primary btn-xs"> EDIT
    </a>
  <?php    
}
?>

其他回答

适合我的变体:

<script>
  function locker(){
    if ($("a").hasClass("locked")) {
         $("a").removeClass('locked').addClass('unlocked');
         $("a").attr("onClick","return false");
    } else {
         $("a").css("onclick","true");
         $("a").removeClass('unlocked').addClass('locked');
         $("a").attr("onClick","");
    }
  }
</script>

<button onclick="locker()">unlock</button>

<a href="http://some.site.com" class="locked">
  <div> 
      .... 
  <div>
</a>

我们不能直接禁用它,但我们可以这样做:

添加类型=“按钮”。 删除href=""属性。 添加disabled属性,这样它就会显示通过更改游标而禁用游标并使游标变暗。

PHP的例子:

<?php
if($status=="Approved"){ 
?>
  <a type="button" class="btn btn-primary btn-xs" disabled> EDIT
     </a>
  <?php    
}else{
?>
  <a href="index.php" class="btn btn-primary btn-xs"> EDIT
    </a>
  <?php    
}
?>

你可以通过返回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>
$(document).ready(function() {
   $('a').click(function(e) {
     e.preventDefault();
  });
});

正确使用按钮和链接。

•按钮激活网页上的脚本功能(对话框,展开/折叠区域)。

•链接带你到另一个位置,无论是到不同的页面或同一页面上的不同位置。

如果你遵循这些规则,就不会出现任何需要禁用链接的情况。即使你让一个链接看起来视觉残疾和空白点击

<a href=“” ng-click=“Ctrl._isLinkActive &&$ctrl.gotoMyAwesomePage()”

你不会考虑可访问性,屏幕阅读器会将其视为链接,视力受损的人会一直好奇为什么链接不起作用。