【发布时间】:2018-07-17 22:08:22
【问题描述】:
我有一个要求,我需要在 href 标记上禁用 onclick 事件。我可以禁用“a href”标签,但“a href”标签中的 onclick 事件仍然没有被禁用。
下面的 sn-p 更清楚地解释了这个问题!
//click works on button even though it is disabled
function check(){
alert("i am able to click on button though it is disabled")
}
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<a href="#" id="tr" onclick="check()" class="btn btn-warning" disabled>Click</a>
在上面的 sn-p 中,即使“a href”似乎被禁用,但是当你点击 a-href 时,点击仍然有效!
请帮帮我!
提前致谢!
【问题讨论】:
-
您可以尝试 unbind() 从链接中删除点击事件,或者您可以从 check() 函数中返回 false。
-
您应该通过调用 event.preventDefault(); 来防止链接的默认行为;事件被传递到事件处理程序中。
标签: javascript html