这里的问题是警报页面的最终值为 i.. 有什么解决方案吗?
for(var i=start;i<=end;i++)
{
num=pageNumber.clone();
num.click(function(event)
{
event.preventDefault();
var page=i;
alert(page);
// drawPager();
});
num.find("span").text(i);
if(i==curPage) {
num.find("span").addClass("current");
num=num.find("span");
}
$("#pager>div").append(num);
}
最佳答案
你应该这样做:
num.click(function(i) {
return function(event) {
event.preventDefault();
var page = i;
alert(page);
}
}(i));
这会产生一个额外的外壳,因此i不会被覆盖。
关于Javascript..可能存在引用值问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4079444/