尽管该链接被禁用,但它仍然是可点击的。
<a href="/" disabled="disabled">123n</a>
如果它是禁用的,我可以使它不可点击吗?我应该使用JavaScript吗?
尽管该链接被禁用,但它仍然是可点击的。
<a href="/" disabled="disabled">123n</a>
如果它是禁用的,我可以使它不可点击吗?我应该使用JavaScript吗?
当前回答
如果你需要用Javascript禁用laravel上的链接,这是我的解决方案:
链接(blade.php):
<a href='/link/to/path' class='btn btn-primary mt-3' onclick='disableLink(this)'>Confirmar</a>
. css文件
.isDisabled {
cursor: not-allowed;
opacity: 0.5;
}
a[aria-disabled="true"] {
color: currentColor;
display: inline-block; /* For IE11/ MS Edge bug */
pointer-events: none;
text-decoration: none;
}
.js文件
function disableLink(link) {
// 1. Add isDisabled class to parent element
link.parentElement.classList.add('isDisabled');
// 2. Store href so we can add it later
link.setAttribute('data-href', link.href);
// 3. Set aria-disabled to 'true'
link.setAttribute('aria-disabled', 'true');
}
function enableLink(link) {
// 1. Remove 'isDisabled' class from parent span
link.parentElement.classList.remove('isDisabled');
// 2. Set href
link.href = link.getAttribute('data-href');
// 3. Remove 'aria-disabled', better than setting to false
link.removeAttribute('aria-disabled');
}
参考:https://css-tricks.com/how-to-disable-links/
其他回答
$(document).ready(function() {
$('a').click(function(e) {
e.preventDefault();
});
});
如果你只是想暂时禁用链接,但留下href在那里启用以后(这是我想做的),我发现所有的浏览器使用第一个href。因此,我能够这样做:
<a class="ea-link" href="javascript:void(0)" href="/export/">Export</a>
提示1:使用CSS指针事件:无;
JavaScript:void(0) (这是一个最佳实践)
<a href="javascript:void(0)"></a>
使用Jquery $('selector').attr("disabled","disabled");
正确使用按钮和链接。
•按钮激活网页上的脚本功能(对话框,展开/折叠区域)。
•链接带你到另一个位置,无论是到不同的页面或同一页面上的不同位置。
如果你遵循这些规则,就不会出现任何需要禁用链接的情况。即使你让一个链接看起来视觉残疾和空白点击
<a href=“” ng-click=“Ctrl._isLinkActive &&$ctrl.gotoMyAwesomePage()”
你不会考虑可访问性,屏幕阅读器会将其视为链接,视力受损的人会一直好奇为什么链接不起作用。
当您将鼠标移到href标签上时,href标签中的任何内容都将显示在浏览器窗口的左下角。
我个人认为像javascript:void(0)这样的东西显示给用户是可怕的。
相反,关闭href,使用jQuery/其他工具,添加一个样式规则(如果你仍然需要它看起来像一个链接):
a {
cursor:pointer;
}