click() 闭包的 Jquery 循环

use*_*570 2 jquery

我有一个名为 print 的数组,并试图为每个具有打印值 id 的按钮获取单独的单击事件。只有我的最后一个按钮似乎与其他按钮不同,我查看了在线示例并知道这是一个关闭问题。感谢帮助。谢谢

for(var i = 0; i < print.length; i++){
            var printer = print[i];
            // Watch this:
           $(document).ready(function(){$('#'+printer).click((function(value) {
                return function() {
                     alert(value);
                };
            })(printer));
        });
    }   
Run Code Online (Sandbox Code Playgroud)

Joe*_*Joe 5

$(document).ready(function(){
    for(var i = 0; i < print.length; i++){
            var printer = print[i];
            // Watch this:
           $('#'+printer).click((function(value) {
                return function() {
                     alert(value);
                };
            })(printer));

    }   
})
Run Code Online (Sandbox Code Playgroud)

你的语法很奇怪。您的关闭非常完美,但文档只准备了一次。

例子