Ver Mensaje Individual
  #5 (permalink)  
Antiguo 23/05/2006, 10:53
fermdp
 
Fecha de Ingreso: diciembre-2001
Ubicación: Mar del Plata
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
Si, pues la aplicacion que tengo que lograr es la siguiente tres campos de texto, en los dos primeros, se ingresan valores del tipo 00:01:14 (Es decir valores de horas, minutos y segundos unicamente, si ponen 00:62:72 Avisaria de la no valides del dato pues no son horas validas y en el tercer campo si campo1 es menor que campo2 mostraria el resultado de la operacion sin tener que usar boton alguno pues es parte de un form que ademas pide mas datos... seria algo parecido a esto...

Campo1: 01:34:21
Campo2: 01:36:28
Campo3: 00:02:07

Es decir una "calculadora" de tiempo a medida que el usuario ingresa los datos pero que tenga la mascara ":" y agrege los ceros para que el usuario solo entre "13421" y quede 01:34:21

El Scrip de la operacion matematica lo tengo pero no se como aplicarle el scrip tuyo de la mascara ":" y tampoco se como hacer para completarlo con ceros si Campo1 no los tubiera.
Espero haberme expresado bien. Nuevamente reitero las gracias por ayudarme tamto y principalmente quiero con este scrip que necesito aprender algo mas para entender y disfrutar del poder de javascrip. Mirando tus ejemplo aprendi y comprendo algo dell codigo y eso me entusiasma !!! Eres muy amable !!!

Todo esto lo estoy tratando de hacer usando, modificando y liando con tu scrip y en el siguiente:

Código PHP:
<html><head><script language="JavaScript"

   function 
padNmb(nStrnLen){ 
    var 
sRes String(nStr); 
    var 
sCeros "0000000000"
    return 
sCeros.substr(0nLen sRes.length) + sRes
   } 

   function 
stringToSeconds(tiempo){ 
    var 
sep1 tiempo.indexOf(":"); 
    var 
sep2 tiempo.lastIndexOf(":"); 
    var 
hor tiempo.substr(0sep1); 
    var 
min tiempo.substr(sep1 1sep2 sep1 1); 
    var 
sec tiempo.substr(sep2 1); 
    return (
Number(sec) + (Number(min) * 60) + (Number(hor) * 3600)); 
   } 

   function 
secondsToTime(secs){ 
    var 
hor Math.floor(secs 3600); 
    var 
min Math.floor((secs - (hor 3600)) / 60); 
    var 
sec secs - (hor 3600) - (min 60); 
    return 
padNmb(hor2) + ":" padNmb(min2) + ":" padNmb(sec2); 
   } 

   function 
substractTimes(t1t2){ 
    var 
secs1 stringToSeconds(t1); 
    var 
secs2 stringToSeconds(t2); 
    var 
secsDif secs1 secs2
    return 
secondsToTime(secsDif); 
   } 

   function 
calcT3(){ 
    
with (document.frm
     
t3.value substractTimes(t2.valuet1.value); 
   } 

  
</script> 
 </head> 
 <body onLoad="calcT3();"> 
  <form name="frm"> 
   Hora1 (hh:mm:ss): <input name="t1" type="text" onChange="calcT3()" onClick="calcT3()" value="00:00:00" maxlength="8"><br> 
   Hora2 (hh:mm:ss): <input name="t2" type="text" onChange="calcT3()" onClick="calcT3()" value="00:00:00" maxlength="8"><br> 
   <hr> 
   Resta (hh:mm:ss): <input type="text" onClick="calcT3()" onFocus="calcT3()" name="t3" value="" maxlength="8" disabled><br><br>
</form></body> </html> 
__________________
:) Fernando Dichiera (:
[email protected]

Última edición por fermdp; 23/05/2006 a las 11:05