Binding click event handlers in a loop causing problems in jQuery

前端 未结 3 694
一个人的身影
一个人的身影 2021-01-19 14:49

I am trying to run the following code:

I pass parameter to a function, but it always has the value of the last object run through the loop. I read some articles abou

3条回答
  •  情书的邮戳
    2021-01-19 15:44

    You can avoid the clouseres problems with the eventData parameter of the bind function like this

    var message = 'Spoon!';
    $('#foo').bind('click', {msg: message}, function(event) {
        alert(event.data.msg);
    });
    message = 'Not in the face!';
    $('#bar').bind('click', {msg: message}, function(event) {
        alert(event.data.msg);
    });
    

    this is from the jquery bind api documentation http://api.jquery.com/bind/#passing-event-data

提交回复
热议问题