Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/04/2016, 18:56
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 6 meses
Puntos: 977
Respuesta: ondblclick aplicado a muchos elementos html

Si utilizas JavaScript inline, bastaría con que, en la llamada a la función, asignes la palabra reservada this como argumento:
Código HTML:
Ver original
  1. <... ondblclick="myFunction(this)">

Y en la función, recibirías a dicho valor como argumento por referencia:
Código Javascript:
Ver original
  1. function myFunction(self){
  2.     location = "$ruta/panel/$user_get/user" + self.innerHTML;
  3. }

Una forma más moderna y limpia de hacerlo, consiste en delegar el evento, en este caso, el doble clic, al elemento que contiene a las filas y columnas, mismo que debería ser el cuerpo de la tabla (<tbody>) o la tabla (<table>). Una vez realizado y detectado esto, se procede a acceder al elemento directamente afectado por el evento mediante la propiedad target del objeto del evento:
Código Javascript:
Ver original
  1. document.getElementById("id de la tabla").addEventListener("dblclick", function(event){
  2.     location = "$ruta/panel/$user_get/user" + event.target.innerHTML;
  3. }, false);

Por como veo que lo has hecho, deduzco que, el contenido de una de las celdas de cada fila, contiene el valor que deseas adherir a la ruta. El problema con ambas formas está en que, si el usuario da el doble clic sobre cualquier parte de la tabla y esta no tiene como contenido al valor en cuestión, se enviaría lo que sea que contenga el elemento afectado, por lo cual es necesaria una condición. Por ejemplo, podrías asignar una clase a todas las celdas de cada fila que contengan al valor en cuestión, así la condición sería la siguiente:
Código Javascript:
Ver original
  1. if (event.target.className == "clase"){
  2.     //Realizas la redirección
  3. }

Utilizando la segunda forma, ya no será necesario insertar JavaScript inline (en la etiqueta HTML) ni crear una función aparte.

__________________
«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