<body>
<div id="div1">1</div>
<div id="div2">2</div>
<div id="div3">3</div>
<script>
$(document).ready(function(){
var boxNumber=1;
while(boxNumber<=3){
$('#div'+boxNumber).click(function(){
alert(boxNumber);
});
boxNumber++;
}
});
</script>
</body>
我希望代码在我点击它时提醒它的框号,但它提醒的是数字 4。我如何解决它?谢谢
最佳答案
您正在提醒计数器的当前值,而不是 <div>
的实际值.
这将按照您的预期工作:
<body>
<div id="div1">1</div>
<div id="div2">2</div>
<div id="div3">3</div>
<script>
$(document).ready(function(){
var boxNumber=1;
while(boxNumber<=3){
$('#div'+boxNumber).click(function(){
alert($(this).text());
});
boxNumber++;
}
});
</script>
</body>
关于javascript - 在 Jquery 中,为什么它不会在 while 循环中提醒每个人?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18421908/