我必须根据条件禁用锚链接,如果某些数据到达该字段,它应该作为超链接工作,如果该数据没有来,那么链接不应该在那里? 对此有任何想法都是受欢迎的。
答案 0 :(得分:14)
我无法理解你的问题正文,所以我会回答你问题的标题......
如何使用javascript禁用锚点?
if (condition) {
document.getElementsByTagName('a')[0].removeAttribute('href');
}
...因为每个人都使用它,对吧?
if (condition) {
$('a').first().removeAttr('href');
}
答案 1 :(得分:11)
案例1:
要禁用:
document.getElementById(id).style.pointerEvents="none";
document.getElementById(id).style.cursor="default";
启用:
document.getElementById(id).style.pointerEvents="auto";
document.getElementById(id).style.cursor="pointer";
案例2:
如果您希望链接消失(不只是禁用它):
document.getElementById(id).style.display="none";
将其取回:
document.getElementById(id).style.display="block"; //change block to what you want.
案例3:
如果你想隐藏它,保留它的空间:
document.getElementById(id).style.visibility="hidden";
要取回它:
document.getElementById(id).style.visibility="visible";
答案 2 :(得分:2)
使用jQuery
if(!data){
$('#linkID').click(function(e) {
e.preventDefault();
});
}
使用Prototype
if(!data){
$('linkID').observe('click', function(event) { event.stop() });
}
答案 3 :(得分:1)
<a href="javascript:check()">my link</a>
function check(){
var data =document.getElementById("yourdatafield").value;
if(data)
window.location="your_link_location";
}
答案 4 :(得分:1)
使用jQuery:
要禁用:
$('#anchor_tag').attr("disabled", true);
启用:
$('#anchor_tag').attr("disabled", false);