生成的jQuery按钮上的单击操作无法正常工作

时间:2015-10-29 11:30:13

标签: jquery

我正在尝试在某些生成的jQuery按钮上设置单击操作。但在我的代码中,我认为是错误的,因为如果我点击任何按钮,console.log(buttonid)将显示#btn170, 表示最后一个按钮(data.incidentList.length)。有什么好奇的,下面的行$(buttonid).css(“border”,“3px solid red”)似乎工作正常,所有按钮都是红色边框。

dictionary: AnyObject? = try NSJSONSerialization.JSONObjectWithData(data,
                    options

1 个答案:

答案 0 :(得分:1)

您需要在闭包中包含按钮单击的代码,否则当您单击任何按钮时,它已将j变量增加到其限制。

for(var j=0; j<=data.incidentList.length; j+= itemInterval)) {
    var buttonid = '#btn'+ (j+1);
    $(buttonid).css( "border", "3px solid red" ); 
    (function(b){
        $(b).click(function () {
            console.log(b);
        });
    })(buttonid);
}

注意:我还摆脱了不必要的parseInt电话。

最后,为您进一步阅读