jQuery的链接标签启用禁用(jquery link tag enable disable)

2019-06-26 14:10发布

我想禁用加载过程中的链接,下面给出的代码

<span id="addlink">"<%= f.add_associated_link('Add Task', @project.tasks.build, :class=>"add") %></span>

我下面代码尝试过,但没有奏效

$("#addlink").attr("disabled", "disabled"); 

$("a.add").hide();

Answer 1:

function disableLink(e) {
    // cancels the event
    e.preventDefault();

    return false;
}

当您希望禁用它哟呼

$('#addlink').bind('click', disableLink);

当你想使你打电话禁用链接

$('#addlink').unbind('click', disableLink);


Answer 2:

$('#addlink').click(function(e) {
    e.preventDefault();
    //do other stuff when a click happens
});

return false;

将阻止存在的,默认情况下,还可以防止事件冒泡

所以这两个之间的艇员选拔取决于您的使用。 如果你想停止默认的行为,还需要冒泡事件再使用的preventDefault



Answer 3:

我会跟RaYell的的混合动力和凤凰的一种解决方案,加入jQuery的命名空间的组合:

$('#addlink').bind('click.killlink',function(event){
    event.preventDefault();
    // You can do any additional onClick behavior here
});

为了拆散这一事件,以及其他相关的事件(任何类型),你组与.killink命名空间,你会运行以下命令:

$('#addlink').unbind('.killlink');

凤凰指出,使用return false会阻止事件冒泡。 preventDefault()有被非常明确(不同的是额外的好处return false ,这可能意味着根据上下文许多不同的事情)。



文章来源: jquery link tag enable disable