Javascript在循环中添加onclick事件

时间:2014-04-08 22:31:58

标签: javascript loops onclick

如何在循环中向元素添加onclick事件?我试过这样的。

            var c = "#FFFFFF"
            for(var i=0; i<_data.length; i++){
                c = c == "#FFFFFF" ? "#D8D8D8" : "#FFFFFF";

                var row = table.insertRow(rowCount++);
                row.style.backgroundColor = c;
                row.onclick = function(){
                    clickEvent(_data[i][0]);
                }

                newColl(row,i,0,_data[i][1]); //Name
                newColl(row,i,1,_data[i][2]); //Surname
                newColl(row,i,2,_data[i][3]); //Time working

                newColl(row,i,3,""); //TO-DO: Started at
                newColl(row,i,4,""); //TO-DO: Walked home
                newColl(row,i,5,""); //TO-DO: Took lunch
            }

我知道不能工作,我知道为什么。但我不知道如何解决它。

1 个答案:

答案 0 :(得分:1)

不要那样!!!!!这就是事件委派存在的确切原因。只需将一次点击事件附加到您正在循环播放的元素的父级,他们就会在点击时自动发送点击事件。

click here for an explanation