लौटा रहा है मेरे पास जावास्क्रिप्ट में चलने वाला लूप है। इस लूप में मैं एक सूची आइटम बना रहा हूं और इसे एक क्लिक ईवेंट बाध्य कर रहा हूं। जब मैं इस सूची आइटम पर क्लिक करता हूं, तो मैं चाहता हूं कि यह वर्तमान लूप ऑब्जेक्ट से पैरामीटर के रूप में डेटा के साथ एक फ़ंक्शन को कॉल करे।बाइंडेड क्लिक ईवेंट के साथ जावास्क्रिप्ट लूप हमेशा अंतिम परिणाम
समस्या यह है कि कोई भी सूची आइटम मैं क्लिक करता हूं। पैरामीटर के रूप में पारित किया जा रहा डेटा उस ऑब्जेक्ट का अंतिम तत्व है जिसे मैं क्लिक किए जा रहे वर्तमान की बजाय लूपिंग कर रहा हूं।
for(e in data) {
var suggestItem = $('<li>'+ data[e]['name'] +'</li>');
suggestItem.click(function() {
$(this).addClass('activeSuggestion');
suggestSelect(suggestField, data[e]);
});
suggestList.append(suggestItem);
}
मुझे लगता है कि मैं समझता हूं कि ऐसा क्यों होता है लेकिन यह सुनिश्चित नहीं है कि मुझे इसे कैसे संभालना चाहिए।
लूप में बनाए गए [jQuery इवेंट हैंडलर का संभावित डुप्लिकेट] (http://stackoverflow.com/questions/7774636/jquery-event-handler-created-in-loop) – Pointy