Foros del Web » Programando para Internet » Javascript »

Error al pasar parametros a función

Estas en el tema de Error al pasar parametros a función en el foro de Javascript en Foros del Web. Buenas tardes amigos foreros. Tengo un peKeño error, pero por pekeño ke es me encuentro atascado. Tengo un select ke segun su selección me llena ...
  #1 (permalink)  
Antiguo 06/01/2009, 14:31
 
Fecha de Ingreso: marzo-2007
Mensajes: 59
Antigüedad: 17 años, 1 mes
Puntos: 1
Error al pasar parametros a función

Buenas tardes amigos foreros. Tengo un peKeño error, pero por pekeño ke es me encuentro atascado.

Tengo un select ke segun su selección me llena un input, sucede que cuando tengo la función cableada, esta trabaja de maravilla, el problema es que cuando intento colocarla con variables pues no trabaja.

Estos son mis campos generados en javascript:
Código HTML:
 nuevoSelect+="<td class=a  width=260> <select name='tipoA"+indiceFilaFormulario2+"' id='tipoA"+indiceFilaFormulario2+"' onChange=[B]mostrarTexto("+indiceFilaFormulario2+") [/B]>";
 nuevoSelect+="<option value='1'>Bono</option> ";
 nuevoSelect+="<option value='2'>Horas Extras Diurnas</option> ";
 nuevoSelect+="<option value='3'>Horas Extras Nocturnas</option> ";
 nuevoSelect+="</select></td>";
myNewCell.innerHTML=nuevoSelect
 myNewCell=myNewRow.insertCell(-1);
 myNewCell.innerHTML="<td class=a width='50'><input class='ghost' type='text' size='5' name='importe2"+indiceFilaFormulario2+"' ></td>";
Al revisar el codigo interpretado del browser me doy cuenta que mostrarTexto("+indiceFilaFormulario2+") se interprata bien y genera el indice que estoy pasando a la función de forma correcta.

A continuación mi función
Código HTML:
function mostrarTexto(indiceFilaFormulario2)
{
var f = document.forms['formulario'];
var textos=new Array("texto 1", "texto 2", "texto 3");
[B]var i=f.tipoA+indiceFilaFormulario2+.selectedIndex;[/B]
	f.importe2+indiceFilaFormulario2+.value=textos[i];
}
He aki donde se encuentra el error pues no me lee el parametro indiceFilaFormulario2, cuando lo sustituyo de esta forma var
Código HTML:
i=f.tipoA1.selectedIndex;
f.importe21.value=textos[i];
si trabaja bien, En Donde Estare Fallando. Gracias a todos

Última edición por danikene; 06/01/2009 a las 14:33 Razón: Falto la notificación
  #2 (permalink)  
Antiguo 06/01/2009, 16:12
 
Fecha de Ingreso: enero-2008
Mensajes: 53
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Error al pasar parametros a función

El problema es que no puedes acceder por medio de la sintaxis de punto (ir escribiendo la ruta separando por puntos) a un atributo, mezclando en el camino variables, porque Javascript no tiene forma de saber qué es una variable declarada, y qué es texto que estás ingresando, así que toma todo como texto.

Por qué no mejor usas document.getElementById()?

Entonces, podrías hacer:

Código javascript:
Ver original
  1. function mostrarTexto(indiceFilaFormulario2)
  2. {
  3. var textos=new Array("texto 1", "texto 2", "texto 3");
  4. var i = document.getElementById("tipoA"+indiceFilaFormulario2).selectedIndex;
  5.  
  6. document.getElementById("importe2"+indiceFilaFormulario2).value=textos[i];
  7. }

Prueba y me cuentas qué tal te fue.

Saludos
  #3 (permalink)  
Antiguo 06/01/2009, 19:11
 
Fecha de Ingreso: marzo-2007
Mensajes: 59
Antigüedad: 17 años, 1 mes
Puntos: 1
De acuerdo Respuesta: Error al pasar parametros a función

hey moonshadow, muchas gracias, funciono a la perfeción. Se me olvidaba ke podica acceder por el id. Gracias de nuevo man.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:29.