Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/07/2014, 13:44
Silver
 
Fecha de Ingreso: noviembre-2001
Ubicación: México DF
Mensajes: 128
Antigüedad: 22 años, 4 meses
Puntos: 0
Respuesta: PHP + Smarty - Pasar variables a JavaScript?

Hola, gracias por la respuesta... lo que dices es lo que hago actualmente y funciona bien, pero a lo que me refiero es a una duplicidad de declaraciones que estoy teniendo y no sé si se puede evitar... te pongo un ejemplo.

Supongamos que en $token tengo un arreglo con todos los tokens para las diferentes acciones... estos tokens se generarían de manera dinámica, pero para este ejemplo los pondré fijos.

En php:
Código:
$tokens = array(
	array('action'=>'viewFile', 'token' => 'gsdf67ghfdsgf7'),
	array('action'=>'editFile', 'token' => '7sdjueghfdsoke')
);

$smarty->assign(array(
	'tokens' => $tokens,  // para usar en en el archivo .tpl
	'tokens_js' =>  json_encode($tokens) // para usar en el archivo .js
));
En el archivo .tpl:
Código:
<head>
	<title>{$ttitle}</title>
	<script type="text/javascript">
		var tokens = {$tokens_js};
	</script>
	<script type="text/javascript" src="js/tools.js"></script>
</head>
A lo que me refiero es a que tuve que declarar dos veces la misma variable, para usarla en smarty y para usarla en javascript.
Lo que yo hubiera esperado es que yo pudiera usar dentro del .js importado las etiquetas de smarty {$tokens[0]['action']}, igual que hago en el .tpl.

No sé si me esté dando a entender...
__________________
Nuedi Servicios SA de CV
http://www.nuedi.mx