有如下代码<input type="button" id="id0" value="test0"/>
<input type="button" id="id1" value="test1"/>
<input type="button" id="id2" value="test2"/>
<input type="button" id="id3" value="test3"/>
<input type="button" id="id4" value="test4"/>
<script type="text/javascript">
function fn(num){
alert(num);
}
for(var i=0;i<5;i++){
$("id"+i).onclick=function(){fn(i);}
}
</script>以为点id0会弹出0,点id1弹出1,但是不论点哪个按钮都是弹出5,为什么会这样
<input type="button" id="id1" value="test1"/>
<input type="button" id="id2" value="test2"/>
<input type="button" id="id3" value="test3"/>
<input type="button" id="id4" value="test4"/>
<script type="text/javascript">
function fn(num){
alert(num);
}
for(var i=0;i<5;i++){
$("id"+i).onclick=function(){fn(i);}
}
</script>以为点id0会弹出0,点id1弹出1,但是不论点哪个按钮都是弹出5,为什么会这样
<input type="button" id="id0" value="test0"/>
<input type="button" id="id1" value="test1"/>
<input type="button" id="id2" value="test2"/>
<input type="button" id="id3" value="test3"/>
<input type="button" id="id4" value="test4"/> <script type="text/javascript">
function $(Id){return document.getElementById(Id)}
function fn(num){
alert(num);
}
for(var i=0;i<5;i++){
(function(i){
$("id"+i).onclick=function(){fn(i);}
})(i)
}
</script>
</body>
alert(num);
}
for(var i=0;i<5;i++){
(function(i){
$("id"+i).onclick=function(){fn(i);}
})(i);
}