Foros del Web » Programando para Internet » Javascript »

Hola, tengo un problema de pasar parámetros

Estas en el tema de Hola, tengo un problema de pasar parámetros en el foro de Javascript en Foros del Web. Código: function map(x,y,nom){ document.getElementById("mapinfo").innerHTML=nom+"x="+x+" y="+y; } echo '<img id="map'.$num.'" src="../includes/fotos/p.gif" onmouseover="map('.$i.','.$j.','.$fila["nombre"].')" width="74" height="74">'; Hola, os explico, x e y son numeros, y nom es un ...
  #1 (permalink)  
Antiguo 23/11/2007, 08:07
 
Fecha de Ingreso: noviembre-2007
Mensajes: 21
Antigüedad: 16 años, 5 meses
Puntos: 0
Hola, tengo un problema de pasar parámetros

Código:
function map(x,y,nom){
	
	document.getElementById("mapinfo").innerHTML=nom+"x="+x+" y="+y;
	

}

echo '<img id="map'.$num.'" src="../includes/fotos/p.gif" onmouseover="map('.$i.','.$j.','.$fila["nombre"].')" width="74" height="74">';
Hola, os explico, x e y son numeros, y nom es un texto, en la funcion javascript, no entiendo porqué al decir onmouseover en $fila["nombre"] qué esta comprobado que esto tiene un valor pues el error que me sale el siguiente ( segun el firebug del mozilla ):
Nombre_que_contiene_fila["nombre"] is not defined
y si lo intento entrecomillar es decir:
echo '<img id="map'.$num.'" src="../includes/fotos/p.gif" onmouseover="map('.$i.','.$j.'," '.$fila["nombre"].' ")" width="74" height="74">';
esto me da error syntax
tambien y llevo ya desde ayer dandole vueltas y no soy capaz de ver el fallo o saber porque me da mal si alguno de ustedes me puede ayudar se lo agradeceria mucho
  #2 (permalink)  
Antiguo 23/11/2007, 09:06
Avatar de Kelpie  
Fecha de Ingreso: febrero-2002
Ubicación: NorthSpain
Mensajes: 609
Antigüedad: 22 años, 2 meses
Puntos: 8
Re: Hola, tengo un problema de pasar parámetros

Tienes un bonito lío de comillas...
Si no pones las comillas supone que es una variable y por eso te da no definida. Debes poner las comillas, pero no dobles (porque son las que encierran todo el onMouseOver) sino simples. Pero como tu propia cadena PHP está con comillas simples tendrás que 'escaparlas' y no puedes porque estás en comillas simples.....

Yo encerraría la variable PHP con comillas dobles, escapando las comillas dobles del HTML de su contenido, para poder poner comillas simples en el parámetro de la llamada a la función...

Código PHP:
echo "<img id=\"map".$num."\" src=\"../includes/fotos/p.gif\" onmouseover=\"map(".$i.",".$j.",'".$fila['nombre']."')\" width=\"74\" height=\"74\">"
De esta manera también se podrían quitar varios "." (echo "<img id=\"map$num\" ), pero yo los suelo dejar para clarificar.
__________________
Kelpie
  #3 (permalink)  
Antiguo 23/11/2007, 09:09
 
Fecha de Ingreso: noviembre-2007
Mensajes: 21
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Hola, tengo un problema de pasar parámetros

Ok! muchas gracias Kelpie!, lo tendré en cuenta para la proxima :D
  #4 (permalink)  
Antiguo 23/11/2007, 09:09
Avatar de Kelpie  
Fecha de Ingreso: febrero-2002
Ubicación: NorthSpain
Mensajes: 609
Antigüedad: 22 años, 2 meses
Puntos: 8
Re: Hola, tengo un problema de pasar parámetros

De todas maneras, esto es PHP puro. Seguro que en el foro de PHP te pueden dar más salidas...
__________________
Kelpie
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 02:01.