Tôi có vòng lặp for chạy trong javascript. Trong vòng lặp này, tôi đang tạo một mục danh sách và ràng buộc một sự kiện bấm vào nó. Khi tôi bấm vào mục danh sách này, tôi muốn nó gọi một hàm với dữ liệu từ đối tượng vòng lặp hiện tại làm tham số.Vòng lặp Javascript với sự kiện nhấp được ràng buộc luôn trả lại kết quả cuối cùng
Vấn đề là, bất kể mục danh sách tôi nhấp vào là gì. Dữ liệu đang được truyền dưới dạng tham số là phần tử cuối cùng của đối tượng mà tôi đang lặp thay vì dữ liệu hiện tại đang được nhấp.
for(e in data) {
var suggestItem = $('<li>'+ data[e]['name'] +'</li>');
suggestItem.click(function() {
$(this).addClass('activeSuggestion');
suggestSelect(suggestField, data[e]);
});
suggestList.append(suggestItem);
}
Tôi nghĩ rằng tôi hiểu tại sao điều này xảy ra nhưng không chắc chắn cách xử lý.
bản sao có thể có của [Trình xử lý sự kiện jQuery được tạo trong vòng lặp] (http://stackoverflow.com/questions/7774636/jquery-event-handler-created-in-loop) – Pointy