Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/04/2011, 13:25
Avatar de mayid
mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
pasar i como parametro de una funcion dentro de un loop

Estoy dando vueltas con esto, pero no lo puedo resolver. Llamo una funcion y le paso parametros desde dentro de un loop. Pero solo me toma el ultimo valor del loop!
Código Javascript:
Ver original
  1. for (var i=0; i<cantidadOpciones; i++)
  2.        {      
  3.          indexOpcion = comboOriginal.options[i].index;
  4.        
  5.          itemCombo = document.createElement('a');
  6.          itemCombo.id = "input"+indexOpcion;
  7.          itemCombo.href = "#"+indexOpcion;
  8.          itemCombo.innerHTML = comboOriginal.options[i].text;        
  9.          
  10.          indice = eval(indexOpcion);
  11.          itemCombo.onclick = function(){ seleccionar( combo_id, indice ); return false; };
  12.          divDesplegable.appendChild(itemCombo);                
  13.        }

El error es en esta linea:
itemCombo.onclick = function(){ seleccionar( combo_id, indice ); return false; };

En fin, cada vez que clickeo en uno de los links generados, el valor siempre es el ultimo. En cambio, con esta linea el valor si es variable:
itemCombo.href = "#"+indexOpcion;

Estoy trabajando con IE.