Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Создание функции в цикле.


Автор: force 1.3.2008, 21:10
Есть такой скрипт:
Код

    var inputs = document.getElementsByTagName('input'); 
    var oldEvt = new Array();
    var i;
    for (i=0; i< inputs .length; i++) {
        oldEvt[i] = inputs[ind].onchange;
        inputs[i].onchange = function() { if (oldEvt[i]) oldEvt[i](); alert('Current number'+i); }
    }

 Т.е. нужно, чтобы к событию onchange у всех input элементов в документе добавилась какая-то функция. Но проблема в том, что для каждого input элемента oldEvt[i] вызывается для самого последнего input элемента, а не для нужного. И каждый раз выводится Current number5 (если всего 5 input элементов).

Автор: Zeroglif 1.3.2008, 21:15
http://forum.vingrad.ru/index.php?showtopic=140148&view=findpost&p=1057724

Автор: force 1.3.2008, 21:43
Большое спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)