Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/03/2015, 10:16
Avatar de maximendez88
maximendez88
 
Fecha de Ingreso: septiembre-2012
Ubicación: Montevideo
Mensajes: 131
Antigüedad: 12 años, 2 meses
Puntos: 3
multiplicar, dividir horas y minutos con javascript

Buenas tardes, estoy hace un tiempo un poco confundido en como se usan las horas y los minutos en javascript.... resulta que estoy haciendo una pequeña aplicación para un profesor de inglés en la cual tengo que crear la planilla de asistencias... para llevar un control y me he encontrado con que tengo que hacer una función que me calcule la cantidad de horas y la cantidad de minutos de clases según la cantidad de clases dictadas... al usuario le pido hora de ingreso, hora de salida y cantidad de clases....dejo lo que estoy intentando abajo para ver si alguien me puede tirar un cable de que estoy haciendo mal....


Código Javascript:
Ver original
  1. function restarHoras() {
  2.  
  3. var cantclases=document.getElementById('cantclases').value;
  4.   inicio = document.getElementById("inicio").value;
  5.   fin = document.getElementById("fin").value;
  6.   inicioMinutos = parseInt(inicio.substr(3,2));
  7.   inicioHoras = parseInt(inicio.substr(0,2));
  8.   finMinutos = parseInt(fin.substr(3,2));
  9.   finHoras = parseInt(fin.substr(0,2));
  10.  
  11.  
  12.  
  13.  
  14.   transcurridoMinutostotal = (finMinutos - inicioMinutos)*cantclases;
  15.  
  16.   var sumarhoras = transcurridoMinutostotal / 60
  17.  
  18.   transcurridoMinutos = transcurridoMinutostotal % 60
  19.  
  20.  
  21.  
  22.   if(sumarhoras>=1)
  23.   {
  24.       transcurridoHoras = ((finHoras - inicioHoras)*cantclases)+sumarhoras;
  25.      
  26.   }
  27.  
  28.   else
  29.   {
  30.      
  31.   transcurridoHoras = (finHoras - inicioHoras)*cantclases;
  32.  
  33.  
  34.   }
  35.  
  36.  
  37.  
  38.   if (transcurridoMinutos < 0) {
  39.     transcurridoHoras--;
  40.    
  41.     transcurridoMinutos = 60 + transcurridoMinutos;
  42.   }
  43.  
  44.   transcurridoHoras.toFixed();
  45.   horas = transcurridoHoras.toString();
  46.  
  47.   minutos = transcurridoMinutos.toString();
  48.  
  49.   if (horas.length < 2) {
  50.     horas = "0"+horas;
  51.    
  52.   }
  53.  
  54.   if (horas.length < 2) {
  55.     horas = "0"+horas;
  56.    
  57.   }
  58.  
  59.  
  60.    
  61.  
  62.   document.getElementById("resta").value = horas +"hs "+minutos+" min";
  63.  
  64. }