日期:2014-05-16  浏览次数:20419 次

javascript循环事件处理问题
代码如下:
function   test(i){
alert(i);
}
....
for(var   i=0;i <10;i++){
...
var   t_a=y[i].getElementsByTagName( "a ")[0];
t_a.onclick=function(){
test(i);
return   false;
}
}
为什么我点击所有的连接都是alert   9啊,如何能让我各连接弹出各自的索引值啊。
谢谢!!!

------解决方案--------------------
function test(i){
alert(i);
}
....
for(var i=0;i <10;i++){
...
var t_a=y[i].getElementsByTagName( "a ")[0];
t_a.onclick=(function(i){
return function () {
test(i);
return false;
}
})(i);
}