Foros del Web » Programando para Internet » Javascript »

Problemas con valor de variable de PHP asignado a una variable javascript

Estas en el tema de Problemas con valor de variable de PHP asignado a una variable javascript en el foro de Javascript en Foros del Web. Hola tengo un link con "<a href: javascript ..." el cual llama a una funcion javascript y luego le asigna un valor de php a ...
  #1 (permalink)  
Antiguo 22/10/2010, 11:36
Avatar de mdromed  
Fecha de Ingreso: septiembre-2009
Mensajes: 389
Antigüedad: 14 años, 7 meses
Puntos: 8
Pregunta Problemas con valor de variable de PHP asignado a una variable javascript

Hola tengo un link con "<a href: javascript ..." el cual llama a una funcion javascript y luego le asigna un valor de php a una variable global de javascript definida mas arriba en el head.

El problema es que si pongo la asignacion de dicho valor a esa variable global de javascript me abre una ventana en blanco en la cual muestra el valor de dicha variable de php.
Si quito la asginacion del valor a la variable funciona perfectamente la llamada a la funcion javascript.

En ASP recuerdo que todo el codigo ASP se ejecutaba antes que todo el resto del documento y por lo tanto si queria inicializar el valor de una variable de javascript con ASP no habia ningun problema, pero al parecer lo que esta haciendo PHP es que cuando intento asignar el valor de la variable de PHP a la variable de javascript es como si ejecutara en ese mismo momento el codigo PHP que es un "<?php echo nombredevariable;?>" y por eso me abre un documento en blanco con el valor de la variable.

Os pongo el codigo fuente que tengo:

En el head de html tengo la declaracion de la variable global "varIdFiguraEscogida":

Código HTML:
<head>
	<script type="text/javascript">
		var varIdFiguraEscogida = 0;
	</script>
</head> 
ASI SI FUNCIONA:
Código PHP:
<a href="javascript: fun_ponFigura('capaImagenFigura','<?php echo $var_filaRsFigura[14];?>');">Realizar accion</a>
PERO ASI NO FUNCIONA:
Código PHP:
<a href="javascript: fun_ponFigura('capaImagenFigura','<?php echo $var_filaRsFigura[14];?>'); varIdFiguraEscogida = <?php echo $var_filaRsFigura[18];?>;">Realizar accion</a>
  #2 (permalink)  
Antiguo 22/10/2010, 21:12
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Problemas con valor de variable de PHP asignado a una variable javascript

en ambas formas, tanto la que funciona como la que no, estas ejecutando codigo javascript usando el pseudo-protocolo javascript. es decir, el script se interpreta a nivel de URL por decirlo asi. en esos casos, si la ultima instruccion devuelve un valor que no sea undefined, entonces el navegdor imprime ese valor en pantalla. en tu caso, la ultima instruccion es la asignacion de un valor a una variable. ¿que puedes hacer? la solucion mas rapida, agrega otra instruccion al final que devuelva undefined. por ejemplo, simplemente agrega undefined;. la solucion mas adecuada seria utilizar eventos, en este caso onclick. y si el proposito del enlace es solo invocar codigo javascript, seria sensato utilizar otro elemento con menos semantica, como SPAN. un enlace puede traer confucion aparte de tiene su proposito particular.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 23/10/2010, 10:24
 
Fecha de Ingreso: junio-2010
Ubicación: Ciudad de Lecheria, Norte de Anzoátegui. Venezuela
Mensajes: 8
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Problemas con valor de variable de PHP asignado a una variable javascript

Buenos dias.
Normalmente empleo PHP en el servidor y javascript en el cliente.

Cuando necesito que una funcion retorne un valor uso return

Saludos cordiales
  #4 (permalink)  
Antiguo 25/10/2010, 06:14
Avatar de mdromed  
Fecha de Ingreso: septiembre-2009
Mensajes: 389
Antigüedad: 14 años, 7 meses
Puntos: 8
Respuesta: Problemas con valor de variable de PHP asignado a una variable javascript

Cita:
Iniciado por zerokilled Ver Mensaje
en ambas formas, tanto la que funciona como la que no, estas ejecutando codigo javascript usando el pseudo-protocolo javascript. es decir, el script se interpreta a nivel de URL por decirlo asi. en esos casos, si la ultima instruccion devuelve un valor que no sea undefined, entonces el navegdor imprime ese valor en pantalla. en tu caso, la ultima instruccion es la asignacion de un valor a una variable. ¿que puedes hacer? la solucion mas rapida, agrega otra instruccion al final que devuelva undefined. por ejemplo, simplemente agrega undefined;. la solucion mas adecuada seria utilizar eventos, en este caso onclick. y si el proposito del enlace es solo invocar codigo javascript, seria sensato utilizar otro elemento con menos semantica, como SPAN. un enlace puede traer confucion aparte de tiene su proposito particular.
Ok muchas gracias, al final voy a usar el "span" como link en lugar de "a href".
Saludos compañero!

Etiquetas: php, variables
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 23:40.