Foros del Web » Programando para Internet » Jquery »

Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE

Estas en el tema de Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE en el foro de Jquery en Foros del Web. Buenas amigos, estoy tratando de hacer una funcion en Jquery que me sume el valor de 3 input (que vienen dado en tiempo) en un ...
  #1 (permalink)  
Antiguo 30/09/2013, 16:02
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 15 años, 4 meses
Puntos: 19
Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE

Buenas amigos, estoy tratando de hacer una funcion en Jquery que me sume el valor de 3 input (que vienen dado en tiempo) en un 4to input, algo asi:

INPUT1 INPUT2 INPUT3 INPUT4 (resultado).

todas estas sumas con el evento BLUR, CHANGE o KEYUP de los input...

agregando que el usuario puede agregar mas lineas:

INPUTn INPUTn INPUTn INPUTn (resultado).

ahora estoy tratando de hacerlo con jquery pero no logro como hacer que el blur de un input tome todos los valores de los otros y lo ponga en Resultado, (LA LINEA 1 EN LA LINEA 1, LA LINEA 2 EN LA LINEA 2 y asi sucesivamente)

Como puedo hacerlo? alguien me puede dar una guia?
  #2 (permalink)  
Antiguo 02/10/2013, 09:05
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE

Pon al menos la estructura, aunque este mal... pero no somos adivinos y menos esclavos.
  #3 (permalink)  
Antiguo 02/10/2013, 13:54
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 15 años, 4 meses
Puntos: 19
Respuesta: Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE

Jejeje bueno queria ideas de como hacerlo, buscando leyendo y pidiendo ayuda en otros foros tengo esto: Ejemplo

Lo que hace eso ya es Sumar por su cuenta lo cual es Casi todo el trabajo, me falta es que en vez de sumar valores Numericos sean tiempos en el formato MM:SS porque no manejo tiempos mayores a 30 mins (cosa que y podria validad por Jquery luego)

Última edición por JuJoGuAl; 02/10/2013 a las 14:17 Razón: Cambio del Link del Ejemplo
  #4 (permalink)  
Antiguo 03/10/2013, 08:16
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE

Bueno, como el manejo del tiempo en javascript es poco intuitivo te recomiendo que importes este framework que es bastante útil a la hora de cambiar formatos de fecha y otros detalles:

http://www.datejs.com/

Te lo puedes descargar o linkearlo directamente con el demo del sitio oficial:

Código:
<script src="http://www.datejs.com/build/date.js" type="text/javascript">
Aquí el manual completo de JsDate por si hay dudas:

http://code.google.com/p/datejs/


Un ejemplo de como puedes usarlo:

Código Javascript:
Ver original
  1. var d = new Date();
  2. var jsDate = d.toString("mm ss");
  3. // Ahora puedes hacer lo que quieras con la nueva variable

Saludos

Última edición por PHPeros; 03/10/2013 a las 08:35
  #5 (permalink)  
Antiguo 25/11/2013, 16:00
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 15 años, 4 meses
Puntos: 19
Respuesta: Sumar Tiempos con imput dinamicos con el Evento KEYUP o CHANGE

Bueno disculpa la ausencia pero e tenido otros trabajos... no consigo hacer lo que necesito. tengo una version vieja (en javascript):

Código Javascript:
Ver original
  1. <!--Con esta funcion sumo los tiempos para mostrar el total-->
  2. function calcular(elemento1,elemento2,elemento3,resultado,obj) {
  3.     horas1=document.getElementById(elemento1).value.split(":");
  4.     horas2=document.getElementById(elemento2).value.split(":");
  5.     horas3=document.getElementById(elemento3).value.split(":");
  6.     horatotale=new Array();
  7.     for(a=0;a<3;a++){
  8.         horas1[a]=(isNaN(parseInt(horas1[a])))?0:parseInt(horas1[a])
  9.         horas2[a]=(isNaN(parseInt(horas2[a])))?0:parseInt(horas2[a])
  10.         horas3[a]=(isNaN(parseInt(horas3[a])))?0:parseInt(horas3[a])       
  11.         horatotale[a]=(horas1[a]+horas2[a]+horas3[a]);
  12.     }
  13.     tiempototal1=new Date()
  14.     tiempototal1.setHours(0);
  15.     tiempototal1.setMinutes(horatotale[0]);
  16.     tiempototal1.setSeconds(horatotale[1]);
  17.     function completCeros(x,n) {
  18.         x = x.toString();
  19.         while( x.length < n )
  20.             x = "0"+x;
  21.         return x;
  22.     }
  23.     // Creo una variable para capturar los resultados
  24.     var hora=tiempototal1.getHours();
  25.     var minu=tiempototal1.getMinutes();
  26.     var seco=tiempototal1.getSeconds();
  27.     //Completo con '0' si el resultado tiene 1 digito
  28.     hora=completCeros(hora, 2);
  29.     minu=completCeros(minu, 2);
  30.     seco=completCeros(seco, 2);
  31.     //Valido si los minuos fueron mas de 30
  32.     if (minu>30)
  33.     {
  34.         alert ('Los tiempos no pueden superar los 30 Minutos');
  35.         document.getElementById(obj).value='';
  36.         document.getElementById(obj).focus();
  37.     }  
  38.     else
  39.     {
  40.         document.getElementById(resultado).value=hora+":"+minu+":"+seco;
  41.     }  
  42. }

pero necesito hacerlo en Jquery =(

Etiquetas: dinamicos, evento, imput
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 03:06.