动态链接函数参数问题jquery

时间:2010-11-30 23:23:05

标签: javascript jquery

我遇到了一些我用Jquery创建的动态元素的问题。

for(var i = 1; i <= totalPages; i++) {
            var link = $(document.createElement('a')).html(i.toString());
            link.attr("id", "link" + i);
            link.click(function ()
            {
                nextPage(i);
            });
            link.css('cursor', 'pointer');
        }

当我看到页面并点击链接时,他们总是发送带有变量“i”的最后一个值的参数(总是为totalPages + 1)。

任何人都知道我做错了什么?

1 个答案:

答案 0 :(得分:2)

试试这个

for(var i = 1; i <= totalPages; i++) {
    var link = $(document.createElement('a')).html(i.toString());
    link.attr("id", "link" + i);
    link.data("index", i);
    link.click(function ()
    {
        nextPage($(this).data("index"));
    });
    link.css('cursor', 'pointer');
}