使用Javascript点击时获取链接的ID

时间:2013-07-22 14:23:29

标签: javascript html onclick click

我是Javascript的新手,并试图设计一个表单,其中包含通过链接点击创建和删除的元素,而无需提交表单。

该脚本取决于获取单击按钮(css和<a>链接)的唯一ID,并计算包含该链接的行的ID,然后删除整个<tr>元素。 / p>

为此,我正在尝试获取点击链接的ID。链接及其嵌入的元素本身是通过javascript点击另一个按钮生成的。

我尝试了以下内容:

var btnDel=document.createElement("a");
btnDel.id="NS_D"+count;
btnDel.className="btn btn-danger";
btnDel.addEventListener('click', function() 
{            
    alert(e.id);
}, false);
var btnText=document.createElement("span");
btnText.className="btn-label";
btnText.innerHTML="Delete";
btnDel.appendChild(btnText);            
td.appendChild(btnDel);     

虽然生成了按钮,但我没有按预期收到警报。哪里可以出错?

2 个答案:

答案 0 :(得分:2)

在事件处理程序中,this引用该元素,因此您可以执行以下操作:

alert(this.id);

要转到<tr>,您可以使用parentNode

上到树上
console.log(this.parentNode.parentNode);

MDN docs

答案 1 :(得分:2)

您需要使用this而不是e

alert(this.id);

在您的事件处理程序中。

Demo here.

(您还需要习惯使用控制台运行代码 - 这会告诉您,您没有看到alert的原因是e不存在。 )