我有一张表,其中有以下事件:
$("#tp-active-list-table td").click(function () {
var transactionNbr = parseInt($(this).parent("tr").children('td.td-transaction-nbr').html());
DoSomething(transactionNbr);
});
Run Code Online (Sandbox Code Playgroud)
它工作正常,基本上它调用DoSomething与Number各自收集的td.
但我确实有一个问题,因为在其中一个td我有一个锚点,如果在该锚点上执行点击,那么DoSomething将运行,页面将正确导航到另一个URL.
无论如何都要检查点击是否在那anchor以避免运行该DoSomething功能?
使用event.stopPropagation()以防止事件冒泡.
$('td a').click(function (e) {
e.stopPropagation()
});
Run Code Online (Sandbox Code Playgroud)
其他选择是: e.target.tagName
$("#tp-active-list-table td").click(function (e) {
if(e.target.tagName.toLowerCase() === 'a'){
var transactionNbr = parseInt($(this).parent("tr").children('td.td-transaction-nbr').html());
DoSomething(transactionNbr);
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
828 次 |
| 最近记录: |