Я сделал три разных подхода, которые вы можете использовать, они очень просты, пожалуйста, откройте каждый фрагмент кода, чтобы увидеть, как он работает.
1 - В этом примере показано, как добавить слушателя ПОСЛЕ создание элементов.
for (var i = 0; i < 4; i++){
var a = document.createElement('input');
a.type = 'button';
a.value = 'click me ' + i;
a.className = 'foo';
document.body.append(a);
}
//JQUERY WAY
$('.foo').on('click', function(){
console.log(this.value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
2 - В этом примере показано, как добавить слушателя ДО создания элементов.
//JQUERY WAY
$(document).on('click', '.foo', function(){
console.log(this.value);
});
for (var i = 0; i < 4; i++){
var a = document.createElement('input');
a.type = 'button';
a.value = 'click me ' + i;
a.className = 'foo';
document.body.append(a);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
3 - И наконец, если вам не нужен jQuery, вот пример Vanilla JS :
for (var i = 0; i < 4; i++){
var a = document.createElement('input');
a.type = 'button';
a.value = 'click me ' + i;
a.className = 'foo';
document.body.append(a);
}
//VANILLA JS WAY
var myElems = document.querySelectorAll('.foo');
myElems.forEach(function(elem){
elem.onclick = function(){
console.log(elem.value);
}
});