var test1 = document.getElementsByClassName('test1'); var test2 = document.getElementsByClassName('test2'); for(var i = 0; i < test1.length; i++){ test1[i].onclick = function(){alert(i)} } function t2(num){ return function(){alert(num);} } for(var i = 0; i < test2.length; i++){ test2[i].onclick = t2(i) }
<div> <input class="test1" type="button" value="1 - 1"> <input class="test1" type="button" value="1 - 2"> <input class="test1" type="button" value="1 - 3"> <input class="test1" type="button" value="1 - 4"> </div><br/> <div> <input class="test2" type="button" value="2 - 1"> <input class="test2" type="button" value="2 - 2"> <input class="test2" type="button" value="2 - 3"> <input class="test2" type="button" value="2 - 4"> </div>