Foros del Web » Programando para Internet » Javascript »

Abrir popup desde un enlace pasándole variables

Estas en el tema de Abrir popup desde un enlace pasándole variables en el foro de Javascript en Foros del Web. Hola! Tengo una tabla con varias filas cargadas dinámicamente. En una de las columnas hay un enlace 'abrir desde el que quiero pasarle el id ...
  #1 (permalink)  
Antiguo 07/12/2011, 10:06
 
Fecha de Ingreso: septiembre-2007
Mensajes: 29
Antigüedad: 17 años, 3 meses
Puntos: 0
Abrir popup desde un enlace pasándole variables

Hola!

Tengo una tabla con varias filas cargadas dinámicamente. En una de las columnas hay un enlace 'abrir desde el que quiero pasarle el id de la fila para mostrar en un popup datos referentes a esa fila y hacer alguna modificación de esta fila.

Tengo el código javascript:

Código Javascript:
Ver original
  1. function popup(id)
  2. {
  3. window.open('index.php?accion=administracion&seccionAdministracion='+id,'asociar','width=450,height=275,menubar=yes,scrollbars=yes,toolbar=yes,location=yes,directories=yes,resizable=yes,top=0,left=0');
  4. }

y el siguiente enlace para abrir el popup:

Código HTML:
Ver original
  1. <td><a href="javascript:popup('.$id.')">abrir</a></td>

pero no hace nada.

Alguien me podría echar una mano?

Gracias anticipadas.
  #2 (permalink)  
Antiguo 07/12/2011, 10:16
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Abrir popup desde un enlace pasándole variables

1 - me imagino que tendrás la función declarada en el un bloque <script> en el <head> ¿no?

2 - ¿estas usando PHP?: tienes que embeberlo adecuadamente:

Código PHP:
Ver original
  1. <td><a href="javascript:popup('<?php echo $id; ?>')">abrir</a></td>
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 07/12/2011, 10:50
 
Fecha de Ingreso: septiembre-2007
Mensajes: 29
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Abrir popup desde un enlace pasándole variables

Cita:
Iniciado por maycolalvarez Ver Mensaje
1 - me imagino que tendrás la función declarada en el un bloque <script> en el <head> ¿no?

2 - ¿estas usando PHP?: tienes que embeberlo adecuadamente:

Código PHP:
Ver original
  1. <td><a href="javascript:popup('<?php echo $id; ?>')">abrir</a></td>
Sí, utilizo Php. Pongo más código para que veas como lo estoy usando:
Código PHP:
Ver original
  1. <?php
  2.  
  3. foreach($ressql $v){
  4.     $tabla .='<tr id="'.$conta.'">
  5.     <td>'.$v['nombre].'</td>
  6.     <td>'.$v['email'].'</td>
  7.    
  8.     <td></td>
  9.     <td><a href="javascript:popup('.$v['id'].')">abrir</a></td>
  10.     </tr>' ;
  11.     $conta++;
  12. }
  13. $tabla .='</tbody>
  14. </table>';
  15. echo $tabla;
  16. ?>
  #4 (permalink)  
Antiguo 07/12/2011, 10:53
 
Fecha de Ingreso: septiembre-2007
Mensajes: 29
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Abrir popup desde un enlace pasándole variables

Cita:
Iniciado por maycolalvarez Ver Mensaje
1 - me imagino que tendrás la función declarada en el un bloque <script> en el <head> ¿no?

2 - ¿estas usando PHP?: tienes que embeberlo adecuadamente:

Código PHP:
Ver original
  1. <td><a href="javascript:popup('<?php echo $id; ?>')">abrir</a></td>
Olvidé decir que el javascript lo metí dentro del head:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>


<script language="JavaScript" type="text/javascript">

function popup(id)
{
window.open('index.php?accion=administracion&secci onAdministracion='+id,'asociar','width=450,height= 275,menubar=yes,scrollbars=yes,toolbar=yes,locatio n=yes,directories=yes,resizable=yes,top=0,left=0') ;
}

</script>
  #5 (permalink)  
Antiguo 07/12/2011, 12:25
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Abrir popup desde un enlace pasándole variables

tienes errores de sintaxis en php, te falta el "as" en el foreach y una comilla después de nombre
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #6 (permalink)  
Antiguo 07/12/2011, 13:24
 
Fecha de Ingreso: septiembre-2007
Mensajes: 29
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Abrir popup desde un enlace pasándole variables

En mi código lo tengo como tú dices. Ha sido al copiar que he modificado algunas cosas y se me ha ido la mano.
De hecho consigo ver las filas resultantes de la consulta. Lo que no consigo es es pasarle la variable de php a la función javascript que abre al popup.
Si no le paso ningún parámetro y pongo la dirección completa en la función javascript sí me funciona. Es al pasarle la variable cuando no me funciona. Creo que no está bien construida la concatenación entre código html y código php(no estoy segura) pero no consigo que me funcione.
  #7 (permalink)  
Antiguo 07/12/2011, 13:28
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Abrir popup desde un enlace pasándole variables

mmm, ¿podrías ver el código fuente generado en el navegador directamente?, lo que presumo es que algo esté provocando fallo de sintaxis en Javascript, postea esa parte en particular, saludos
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #8 (permalink)  
Antiguo 07/12/2011, 13:50
 
Fecha de Ingreso: septiembre-2007
Mensajes: 29
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Abrir popup desde un enlace pasándole variables

Cita:
Iniciado por maycolalvarez Ver Mensaje
mmm, ¿podrías ver el código fuente generado en el navegador directamente?, lo que presumo es que algo esté provocando fallo de sintaxis en Javascript, postea esa parte en particular, saludos
El código js:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>


<script language="JavaScript" type="text/javascript">

function popup(id)
{
window.open('index.php?accion=administracion&secci onAdministracion='+id,'asociar','width=450,height= 275,menubar=yes,scrollbars=yes,toolbar=yes,locatio n=yes,directories=yes,resizable=yes,top=0,left=0') ;


y el código completo php:


<?php
require_once('adodb/adodb.inc.php');
$ADODB_CACHE_DIR = 'adodbcache';
$db = ADONewConnection('mysql');
$db->Connect('localhost', 'root', '', 'guia');

$ressql = "SELECT id, nombre, email FROM padres";
$ressql = $db->GetAll($ressql);
$tabla ='<table>
<tbody>';
$conta = 0;

foreach($ressql as $v){
$tabla .='<tr id="'.$conta.'">
<td>'.$v['nombre'].'</td>
<td>'.$v['email'].'</td>

<td><a href="javascript:popup('.$v['id'].')">abrir</a></td>
<td><a href="">abrir</a></td>
</tr>' ;
$conta++;
}
$tabla .='</tbody></table>';
echo $tabla;
?>



}

</script>

Gracias por responder

Etiquetas: enlace, php, popup, 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 11:13.