数据表点击td或td内的(链接)

Datatable click on td or a (link) inside td

本文关键字:td 链接 内的 数据表      更新时间:2023-09-26

我使用的是datatable,当我在表内单击时,我想知道是在(链接)还是td(单元格)上单击。

<td>
    my text - <a href="mylink.html">mylink</a>
</td>

这是我的数据表初始化

oTable = $('#mytable').dataTable(
{
...
};

我在td上的检查点击

oTable.on("click", 'td', function(e)
{
...
});

事实上,如果我点击td或a.,我会得到相同的结果(this)

谢谢你的帮助。

如果你想在td中点击a,你应该使用:

oTable.on("click", 'td a', function(e)
{
...
});

希望这能有所帮助。

感谢haim770的快速提示,我找到了如何解决问题

event.target属性返回DOM元素,因此我可以检索具有值的属性/属性。

event.target.tagName属性专门用于元素节点(类型1节点),以获得元件的类型。

其他类型的节点也可用(注释、属性、文本等)。要获得节点类型的名称,我使用nodeName属性。

当对元素节点使用nodeName时,我会得到它的标记名,所以两者都可以真正使用,尽管使用nodeName时浏览器之间的一致性会更好。

在我的情况下,我必须使用来获得一个href URl-link:

oTable.on("click", 'td', function(e)
{
    var $a = $(this).children('a');
    var contactUrl = $a.attr('href');
});