Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] obtener id de una filla <table>

Estas en el tema de obtener id de una filla <table> en el foro de Javascript en Foros del Web. Buenas tardes, quería hacer una consulta y seria si alguien me puede decir como hacerlo: Realizo una consulta en php, esta consulta la despliego en ...
  #1 (permalink)  
Antiguo 13/02/2015, 10:38
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
obtener id de una filla <table>

Buenas tardes, quería hacer una consulta y seria si alguien me puede decir como hacerlo:

Realizo una consulta en php, esta consulta la despliego en una tabla en html mi pregunta es si yo me posiciono en una fila de la tabla y le doy click como puedo obtener el dato que se encuentre en determinada columna y en la fila que estoy posicionado.

no se si se entienda que es lo que quiero.

de ante mano gracias y espero que alguien me pueda ayudar, saludos
  #2 (permalink)  
Antiguo 13/02/2015, 10:47
Avatar de kalvinman  
Fecha de Ingreso: octubre-2006
Ubicación: Bogota Colombia
Mensajes: 849
Antigüedad: 17 años, 6 meses
Puntos: 22
Respuesta: obtener id de una filla <table>

Creo que lo que necesitas es un evento del lado del cliente y eso lo debes hacer con javascript, y para pasar los datos de javascript a PHP usas AJAX.

Por ejemplo si le pones un ID a cada celda de tu tabla puedes hacer un evento en javascript que detecte cuando se posiciona el cursor sobre esa celda y disparar un comportamiento AJAX que envie el dato a PHP.
  #3 (permalink)  
Antiguo 13/02/2015, 10:59
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

y como podría hacer eso?
  #4 (permalink)  
Antiguo 13/02/2015, 11:17
Avatar de kalvinman  
Fecha de Ingreso: octubre-2006
Ubicación: Bogota Colombia
Mensajes: 849
Antigüedad: 17 años, 6 meses
Puntos: 22
Respuesta: obtener id de una filla <table>

La forma mas simple que conozco es usando la libreria jQuery de javascript.

Estudia Jquery, y sus selectores.

Código HTML:
Ver original
  1. <tr>
  2.  <td id="micelda">Aquí el valor</td>
  3. </tr>

Código Javascript:
Ver original
  1. $( "#micelda" ).mouseover(function() {
  2.   //Aqui pones lo que pasa
  3.  alert("Estoy parado en mi celda");
  4. });
  #5 (permalink)  
Antiguo 13/02/2015, 11:29
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

Deja lo pruebo y haber que le modifico para obtener el dato e informo que paso gracias
  #6 (permalink)  
Antiguo 13/02/2015, 11:56
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: obtener id de una filla <table>

No es necesario echar mano de alguna librería para hacer algo tan sencillo. Basta con que tomes al elemento en el cual se produjo el evento click mediante la propiedad target del objeto del evento y ya teniéndolo, solo te queda tomar el texto que contiene.

Código Javascript:
Ver original
  1. document.querySelector("table").addEventListener("click", function(event){
  2.     alert(event.target.innerText);
  3. }, false);

DEMO

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #7 (permalink)  
Antiguo 13/02/2015, 15:06
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

Tu código me sirvió muy bien ahora quisiera hacer otra consulta, tengo este codigo junto con el tuyo

Código PHP:
<?php

include ("leer/Extras/conexion.php");

//$con=conexion();



$res=mysql_query("select * from revision where estado='REVISION' ORDER BY  fecha_ing ASC limit 20",$con);

?>

<center><table  style="font-size:12px" border="8">
<tr width="300" height="100" align="center">
<th>Folio revision</th>
<th>Tipo Equipo</th>
<th>Tipo revision</th>
<th>Actualizar Antivirus</th>
<th>Actualizaciones</th>
<th>cont</th>
</tr>

<?php while($fila=mysql_fetch_array($res)){ 
//consulta para traer datos del equipo que tiene cada usuario

/*$res2=mysql_query("select * from equipos where id_trabajador='".$fila[id_trabajador]."'",$con);

while($fila2=mysql_fetch_array($res2))
{*/
$cont=$cont+1;


?>

<form>
<tr width="100" height="30" align="center">
<td onclick="javascript:window.open('http://google.com.mx/','','width=600,height=400,left=50,top=50,toolbar=yes');funcion()">
<?php echo $fila[folio_rev]; ?></a></td>
<td ><?php echo $fila[tipo_equipo]; ?></td>
<td><?php echo $fila[tipo_rev]; ?></td>
<td><?php echo $fila[respaldo]; ?></td>
<td><?php echo $fila[limpieza]; ?></td>
<td><?php echo $cont ?></td>
</tr>
</form>

<?php }?>
<script>
{
    document.querySelector("table").addEventListener("click", function(event){
    var y =event.target.innerText;
    alert(y);
},false);


}

</script>
Quisiera saber si exite la manera de mandar la variable "Y" (que se encuentra en el script) a otra pagina y cargar dicha pagina.(en la otra pagina quiero realizar una consulta con esta variable)
  #8 (permalink)  
Antiguo 13/02/2015, 15:43
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: obtener id de una filla <table>

Claro que puedes. Si deseas que eso ocurra en el momento en el que le das el clic, debes de hacer esto:

Código Javascript:
Ver original
  1. document.querySelector("table").addEventListener("click", function(event){
  2.     if (event.target.tagName == "TD"){
  3.         window.location = "tupagina.php?variable=" + event.target.innerText;
  4.     }
  5. },false);

Y en el archivo 'tupagina.php' (o como se llame), lo recibes así: $_GET['variable']. Le añadí una condición para que solo ocurra la redirección si se le dio clic a una celda de la tabla y no a otra parte de la misma.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #9 (permalink)  
Antiguo 14/02/2015, 12:23
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

Exelente tu ayuda sin duda me has resuelto bastante dolor de cabeza :)

mira deje mi codigo asi

Código PHP:
<?php 

include ("leer/Extras/conexion.php"); 

//$con=conexion(); 



$res=mysql_query("select * from revision where estado='REVISION' ORDER BY  fecha_ing ASC limit 20",$con); 

?> 

<center><table  style="font-size:12px" border="8"> 
<tr width="300" height="100" align="center"> 
<th>Folio revision</th> 
<th>Tipo Equipo</th> 
<th>Tipo revision</th> 
<th>Actualizar Antivirus</th> 
<th>Actualizaciones</th> 
<th>cont</th> 
</tr> 

<?php while($fila=mysql_fetch_array($res)){  
//consulta para traer datos del equipo que tiene cada usuario 

/*$res2=mysql_query("select * from equipos where id_trabajador='".$fila[id_trabajador]."'",$con); 

while($fila2=mysql_fetch_array($res2)) 
{*/ 
$cont=$cont+1


?> 

<form> 
<tr width="100" height="30" align="center"> 
<td onClick="funcion()"><?php echo $fila[folio_rev]; ?></a></td> 
<td><?php echo $fila[tipo_equipo]; ?></td> 
<td><?php echo $fila[tipo_rev]; ?></td> 
<td><?php echo $fila[respaldo]; ?></td> 
<td><?php echo $fila[limpieza]; ?></td> 
<td><?php echo $cont ?></td> 
</tr> 
</form> 

<?php }?> 
<script> 
function funcion()
{
document.querySelector("table").addEventListener("click", function(event){ 
    if (event.target.tagName == "TD"){
        window.open("dato.php?variable="+ event.target.innerText,'','width=600,height=400,left=50,top=50,toolbar=yes')

    }
},false);
}

</script>
cambie algo del script y agregue una función al primer <td> y funciona muy bien pero pasa algo curioso, al cargarla pagina la primera vez me respeta e onclick de la función pero al ejecutarla la primera vez ya no me respeta el onclick en cualquier td que le de click ejecuta el script
  #10 (permalink)  
Antiguo 14/02/2015, 12:38
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: obtener id de una filla <table>

El código que te proporcioné no debe de estar dentro de ninguna función, pues su fin es que ejecute una función al momento de dar un clic sobre cualquiera de las celdas.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #11 (permalink)  
Antiguo 14/02/2015, 13:00
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

ok y ¿no existe manera de condicionarlo a que se ejecute a dar click solo en la primera celda?
  #12 (permalink)  
Antiguo 14/02/2015, 13:18
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: obtener id de una filla <table>

Claro que se puede, pero no me queda claro si $fila[folio_rev] es el dato que deseas enviar.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #13 (permalink)  
Antiguo 14/02/2015, 13:28
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

<td onClick="funcion()"><?php echo $fila[folio_rev]; ?></a></td>

al darle click en el td el dato que esta adentro es el que quiero mandar en estecaso el dato q esta adentro es $fila[folio_rev]
  #14 (permalink)  
Antiguo 14/02/2015, 13:36
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: obtener id de una filla <table>

Pues, la cosa se vuelve más sencilla. Olvida el código anterior, porque usarás tu función funcion(), pero deberás de enviarle el contenido de la celda como parámetro.

Código HTML:
Ver original
  1. <td onClick="funcion(this.innerText)">

Código Javascript:
Ver original
  1. function funcion(valor){
  2.     window.location = "tupagina.php?variable=" + valor;
  3. }

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #15 (permalink)  
Antiguo 14/02/2015, 13:48
 
Fecha de Ingreso: julio-2013
Ubicación: Durango, Dgo
Mensajes: 108
Antigüedad: 10 años, 9 meses
Puntos: 8
Respuesta: obtener id de una filla <table>

Alexis88 amigo gracias muy concretas tus respuestas y muy acertadas también ya salio lo que quería lograr de ante mano muchas gracias todo funciono perfecto.

Etiquetas: html, 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 04:24.