Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   как правильно установить обработчик? (https://javascript.ru/forum/events/4072-kak-pravilno-ustanovit-obrabotchik.html)

Yurik 20.06.2009 00:20

как правильно установить обработчик?
 
в скрипте динамично создается табличка
циклом такого типа

for(var i=0; i<data.length; i++) {
	var  tab= document.createElement('TABLE');
        var tbody = document.createElement('TBODY');
	var tr=document.createElement('TR');
	var td1=document.createElement('TD');
	var td2=document.createElement('TD');

	tab.appendChild(tbody);
	tbody.appendChild(tr);
	tr.appendChild(td1);
	tr.appendChild(td2); 

        td1.onclick= function() {myfunc(data[i].id)}
}


так вот у меня последняя строка делает не совсем то, что я от неё хочу :(
не знаю как и объяснить, например, если myfunc выглядит вот так

function myfunc(param){
        alert(param);
}


и в массиве содержится 3 елемента с id = 1,2 и 3 соответственно, так вот при клике на любую td1 получаю alert(3)

Gvozd 20.06.2009 02:00

http://javascript.ru/basic/closure#p...-ispolzovaniya


Часовой пояс GMT +3, время: 17:03.