javascript - 禁用 li 并不允许单击

标签 javascript jquery twitter-bootstrap

我使用 twitter bootstrap 和 jquery。

根据变量,我想禁用并删除单击的可能性

<ul class="nav nav-pills nav-stacked">
   <li id="member" role="presentation" data-toggle="tab" class="active"><a href="#"><span class="glyphicon glyphicon-inbox"></span> Membres</a></li>
   <li id="subscription" role="presentation" data-toggle="tab"><a href="#"><span class="glyphicon glyphicon-bed"></span> Abonnements</a></li>
</ul>

我尝试了这段代码

if (role != "ROLE_ADMIN") {
  $('#subscription').addClass("disabled").find("a").attr("onclick", "return false;");
  $('#report').addClass("disabled").find("a").attr("onclick", "return false;");
  $('#user').addClass("disabled").find("a").attr("onclick", "return false;");
  $('#setup').addClass("disabled").find("a").attr("onclick", "return false;");
} else {
    $("#subscription").removeClass("disabled").find("a").removeAttr("onclick");
    $("#report").removeClass("disabled").find("a").removeAttr("onclick");
    $("#user").removeClass("disabled").find("a").removeAttr("onclick");
    $("#setup").removeClass("disabled").find("a").removeAttr("onclick");
}

li已禁用,但我可以点击它...

编辑

$('#user').prop('onclick',null).off('click');

似乎可以完成任务

最佳答案

向您的禁用类添加一些样式,例如

.disabled{
    pointer-events:none;
    opacity:0.7;
}

关于javascript - 禁用 li 并不允许单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37931813/

相关文章:

javascript - 在 JavaScript/jQuery 中连接字符串?

jquery - 如何制作响应式右导航栏图标?

javascript - 传单上的 Bootstrap 行

javascript - 在每个函数内处理 "that"时出现奇怪的 JS 行为

javascript - 如果在声明变量之前使用变量,为什么不会抛出 ReferenceError?

javascript - 如何使用jquery从复选框组中获取选中的值

jquery - AJAX : Bootstrap Typeahead: Unexpected Token Error

javascript - Angular Material Datepicker 切换图标单击事件

javascript - 自动完成 : how to pass an extra parameter to the response callback

jquery - 如何修复 Internet Explorer 中的多页表单显示和功能问题?