Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Работа с локальными переменными в цикле, фиксирование значение переменной
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Работа с локальными переменными в цикле, фиксирование значение переменной

Страниц (1): [1]
 

1. Иван14 - 31 Марта, 2012 - 05:12:07 - перейти к сообщению
Всем привет! ;)
Парни подскажите как быть,

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. function(){
  3. for(var key in select_values){
  4.           var num = key ;
  5.           $('#id' + num ).change(function(){
  6.                 FUNCTION(num);
  7.           });
  8. }
  9. }


в итоге у меня для каждого события change срабатывает что num == последнему ключу массива select_values.
как сделать, чтобы значение этой переменной сохранялось только для текущей итерации? а именно, у меня есть массив:
select_values = [0:число, 1:число, ...];
как сделать, чтобы значение функции FUNCTION создавалось по следованию цикла.
(при изменении селекта с id = 'id' + num значения num были такими же как и цифра в конце id. )

P.S. можно регуляркой, но я не хочу их применять, так как тут простая задача, просто мне не до конца понятно как работать с переменными в цикле.. как их хранить и обрабатывать в данном примере..
2. IllusionMH - 31 Марта, 2012 - 23:43:55 - перейти к сообщению
Иван14, похложая проблема описана здесь. (ссылка на описание похожей проблемы, но рекомендую ознакомится со всей статьей)
num нужно передавать как параметр, чтобы избежать замыкания.

 

Powered by ExBB FM 1.0 RC1