Foros del Web » Programando para Internet » Javascript »

Resultado consulta MySQL misma página y div id dinámico

Estas en el tema de Resultado consulta MySQL misma página y div id dinámico en el foro de Javascript en Foros del Web. Hola a todos. En una página, dentro de una tabla, aparecen los registros resultantes de una consulta MySQL que muestra rutas de buses. Al cliquear ...
  #1 (permalink)  
Antiguo 10/12/2012, 11:38
 
Fecha de Ingreso: agosto-2010
Mensajes: 25
Antigüedad: 13 años, 8 meses
Puntos: 0
Resultado consulta MySQL misma página y div id dinámico

Hola a todos.
En una página, dentro de una tabla, aparecen los registros resultantes de una consulta MySQL que muestra rutas de buses. Al cliquear en un link en cada registro(fila) se abre un <tr> debajo del mismo con un <div> en el cual se muestra el resultado de otra consulta mysql (que muestra más detalladamente la ruta), sin recargar la página.
Pero el <div> que se abre tiene un id compuesto por un nombre fijo y una variable php (contenido$fila) siendo fila el número de fila del registro. Esto complica en el archivo funciones.js al indicar el <div> donde se mostrará el resultado.
Este es el erchivo resultado.php:

Código:
$fila=1;
...
...
<td>
<input id='nom' type='hidden' value="<?php echo '$valor';?>" />
<?php echo "<a href=\"javascript:void(0)\" onClick=\"SwitchBox('Cont$fila','btn$fila');buscar(document.getElementById('nom').value);\">Ver</a>\n"; ?>
</td>
<?php	
echo "<tr colspan='10'>
<td class='ruta_completa' height='54' colspan='10'>
<div class='BoxCont' id='cont$fila' style='display: none;'>
</div>
</td>
</tr>\n";
echo "</tr>\n";
$fila++;
El valor $valor que se pasa oculto es un id de la ruta que hace cada linea.
Estas son las funciones en el archivo funciones.js:

Código:
function SwitchBox(bx,btn) {
	// bx: id del contenedor
	// btn: botón a cambiar imagen y texto
	var  estado = document.getElementById(bx).style.display 
	if (estado=='none') {
		document.getElementById(bx).style.display 	= 'block';
		document.getElementById(btn).src 			= 'images/less.gif';
		document.getElementById(btn).title		= 'Click para Contraer';
	} else {
		document.getElementById(bx).style.display 	= 'none';
		document.getElementById(btn).src 			= 'img/more.gif';
		document.getElementById(btn).title		= 'Click para Expandir';
	} // endif
} // end function



var req;
 function buscar(valor) {
 if(window.XMLHttpRequest) {
 req = new XMLHttpRequest();
 }
 else if(window.ActiveXObject) {
 req = new ActiveXObject("Microsoft.XMLHTTP");
 }
 var url = "ruta_completa.php?valor="+valor;
 req.open("Get", url, true);
 req.onreadystatechange = function() {
 if(req.readyState == 1) {
 document.getElementById('cont$fila').innerHTML = 'espere ...';
 }
 if(req.readyState == 4 && req.status == 200) {
 var respuesta = req.responseText;
 document.getElementById('cont$fila').innerHTML = respuesta;
 }
 }
 req.send(null);
 }
La función SwitchBox hace que se abra el div cont$fila en resultado.php, cada vez que doy click en el link de cada registro, debajo del mismo como otro <tr>, y funciona bien.
La función buscar carga el resultado de la consulta mysql, hecha en un archivo procesa_valor.php, dentro del div cont$fila pero solamente si cambio el nombre del div a texto simple, sin variable $fila, p.e. <div id="cont">. En este caso solo muestra el primer registro repetido en todas las filas.
Necesito que javascript acepte la variable "cont$fila" y luego recibirla en resultado.php. O también pensé en hacer una sola función con la función buscar y la función SwitchBox sin tener que nombrar el div cont$fila.
Probé con las dos funciones solas y no hay caso.
Muchas gracias desde ya por su ayuda
  #2 (permalink)  
Antiguo 10/12/2012, 11:49
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Resultado consulta MySQL misma página y div id dinámico

Hola:

"cont$fila" dependerá de $fila... tienes que considerar que javascript no tiene nada que ver con php...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 10/12/2012, 16:59
 
Fecha de Ingreso: agosto-2010
Mensajes: 25
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Resultado consulta MySQL misma página y div id dinámico

Hola. Gracias por responder.
Justamente, mi problema es cómo hacer para que la función javascript tome el valor '$fila' y cómo convertir ambas funciones en una sola para que, luego que se habra el div resultado en la fila correspondiente (SwitchBox), se ejecute la función buscar.

Etiquetas: funcion, html, input, js, mysql, página, php
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 09:12.