Foros del Web » Programando para Internet » Javascript » Frameworks JS »

mas de un objeto al hacer keyup

Estas en el tema de mas de un objeto al hacer keyup en el foro de Frameworks JS en Foros del Web. Hola buenas No se como hacer lo siguiente con jquery, lo que quiero es que pro ejemplo al hacer keyup en cualquier campo de un ...
  #1 (permalink)  
Antiguo 04/08/2011, 01:00
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 8 meses
Puntos: 1
mas de un objeto al hacer keyup

Hola buenas

No se como hacer lo siguiente con jquery, lo que quiero es que pro ejemplo al hacer keyup en cualquier campo de un formulario, siempre entre por la misma funcion, por ejemplo
dos campos con id nombre, y apellidos

como lo hago seria

$('#nombre').keyup (function () {
$("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
})

$('#apellidos').keyup (function () {
$("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
})

no se podria unificar todo en uno?

algo como

$('#nombre').keyup; $('#nombre').keyup (function () {
$("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
})


es que si fueran dos campos solos pero son muchos y repetir lo mismo pues como que no

Un Saludo
  #2 (permalink)  
Antiguo 04/08/2011, 02:33
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 16 años
Puntos: 66
Respuesta: mas de un objeto al hacer keyup

buenas,

se me ocurren dos maneras:

una es que asignes el evento onkeyup a cada caja de texto que quieras que se ejecute la función y llames a una función JS que llame al JQuery:

Código HTML:
Ver original
  1. <input type="text" id="caja1" onkeyup="gestionar(this.id)">
  2. ....
  3. <script type="text/javascript">
  4. function gestionar(id)
  5. {
  6. $("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
  7. }

y la otra opción es un poco más práctica pero no sé si va a funcionar en todos los navegadores (está probado en IE, FF y Chrome)

Código HTML:
Ver original
  1. <script type="text/javascript">
  2.     document.onkeyup = function ()
  3.     {
  4.         try
  5.         {
  6.             var obj = document.getElementById(document.activeElement.id);
  7.             if(obj.type=="text")
  8.                 funcionJQuery(document.activeElement.id);
  9.         }
  10.         catch(err)
  11.         {}
  12.        
  13.     }
  14.     function funcionJQuery(id)
  15.     {
  16.         $("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
  17.     }
  18.      </script>

en este segundo caso el navegador detecta el evento automáticamente, contempla que quien tiene el foco es un input text, y si es así llama a la función.

espero que alguna te valga.

saludos.
  #3 (permalink)  
Antiguo 04/08/2011, 03:11
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 8 meses
Puntos: 1
Respuesta: mas de un objeto al hacer keyup

Hola Gracias por la respuesta, pero yo lo que quiero saber es si se puede hacer con jquery eso que comento, ademas para hacerlo de la manera que tu planteas creo que seria mas facil de la siguiente forma, ademas sin comerme la cabeza :




Código HTML:
Ver original
  1. $('#nombre').keyup (function () {
  2. funcionJQuery();
  3. })
  4.  
  5. $('#apellidos').keyup (function () {
  6. funcionJQuery();
  7. })
  8.  
  9. function funcionJQuery(id)
  10. {
  11.         $("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
  12. }


Un Saludo
  #4 (permalink)  
Antiguo 04/08/2011, 09:52
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 16 años
Puntos: 66
Respuesta: mas de un objeto al hacer keyup

trabaja con los selectores:

Código Javascript:
Ver original
  1. $('#nombre,#apellido').keyup (function () {
  2. $("#midiv").load('arvhivo.php?n='+$('#nombre').get (0).value+'&a='+$('#apellidos').get(0).value);
  3. })

tampoco entiendo mucho para que haces esto

$('#nombre').get (0).value;

pudiendo hacer esto

$('#nombre').val();

recuerda que los id's son unicos.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #5 (permalink)  
Antiguo 04/08/2011, 19:35
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 8 meses
Puntos: 1
Respuesta: mas de un objeto al hacer keyup

Gracias Tredio eso es lo que queria exactamente

Un Saludo

Etiquetas: javascript, jquery
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 14:36.