使用jQuery从锚标记中删除链接

时间:2011-04-22 15:30:54

标签: jquery

我想在使用jQuery单击该表外的另一个链接时禁用动态创建的表的所有<a>标记。由于表是动态创建的,因此我的click事件无法在表中找到<a>标记。可能是什么解决方案?

我试过$("#tableId a").removeAttr("href"),但这不起作用。

5 个答案:

答案 0 :(得分:1)

由于表是动态创建的,因此请使用.live()

$('#outerLink').one('click', function ()
{
    $("#myTable a").live('click', function()
    {
        return false;
    });
});

答案 1 :(得分:0)

$("#tableId a").live('click',function(e){
e.preventDefault();
return false;
});

答案 2 :(得分:0)

由于表是动态创建的,因此您必须绑定live个事件,如下所示:

$("#tableID a").live("click", function(e){
  e.preventDefault();
  return;
});

答案 3 :(得分:0)

您也可以将disabled属性添加到链接中。

$("#tableID").find("a").attr("disabled","disabled");

答案 4 :(得分:0)

在jquery 1.7及更高版本中,不推荐使用Live()方法。请尝试以下方法:

$("#tableId").on({
click: function(event){ $(this).removeAttr("href"); }
},"a");

只要页面加载时存在#tableId。否则你需要达到确实存在的水平:

$(document).on({
click: function(event){ $(this).removeAttr("href"); }
},"a");