将onclick事件附加到返回id的锚元素

时间:2015-09-08 18:45:46

标签: javascript

下面我正在尝试向DOM添加新的锚元素。 我还想为每个返回其id的新创建元素添加一个onclick事件,但是无法完成它。 欢迎大家帮忙!

var text = document.getElementById("output");

for (var i = 0; i < uld.length; i++){ 

var x = document.createElement("A");
var t = document.createTextNode(uld[i][1]);
x.setAttribute('id', i);
x.onclick = function getId() {alert("kikker");};
x.appendChild(t);

text.appendChild(x);
}

1 个答案:

答案 0 :(得分:1)

&#39; this&#39; onclick中的指针指的是元素。 所以你可以使用&#39; id&#39;像这样:

var text = document.getElementById("output");

var i;
for (i = 0; i < uld.length; i++) { 
    var x = document.createElement("A");
    var t = document.createTextNode(uld[i][1]);
    x.setAttribute("id", i);

    x.onclick = function() {
        var id = this.id;
        alert(id);
    };

    x.appendChild(t);
    text.appendChild(x);
}