Cita:
Iniciado por KarlanKas Había un fallo. Perdona por el rapapolvo!
A ver si ahora va!
Código:
<html>
<head>
<title>Untitled</title>
<script>
function calcular(esto,campo2,destino){
f=esto.form;
campos=new Array(esto.name,campo2);
horatotale=new Array(0,0,0);
for(b=0;b<campos.length;b++){
horas=f[campos[b]].value.split(":");
for(a=0;a<3;a++){
horas[a]=(isNaN(parseInt(horas[a])))?0:parseInt(horas[a])
horatotale[a]=(b==0)?horas[a]:horatotale[a]-horas[a]; // Suma o resta según prefieras
}
}
horatotal=new Date()
horatotal.setHours(horatotale[0]);
horatotal.setMinutes(horatotale[1]);
horatotal.setSeconds(horatotale[2]);
f[destino].value=horatotal.getHours()+":"+horatotal.getMinutes()+":"+horatotal.getSeconds();
}
</script>
</head>
<body>
<form action="#" onsubmit="calcular(this);return false">
<input type="text" name="hora1" onblur="calcular(this,'hora2','horatotal')" /> -
<input type="text" name="hora2" onblur="calcular('hora1',this,'horatotal')" />
= <input type="text" name="horatotal" /> <input type="submit" value="calcular" />
<br />
<br />
<input type="text" name="pepe" onblur="calcular(this,'juan','horatotal2')" /> -
<input type="text" name="juan" onblur="calcular('pepe',this,'horatotal2')" />
= <input type="text" name="horatotal2" /> <input type="submit" value="calcular" />
</form>
</body>
</html>
Un saludo! Oye gracias, este cript funciona muy bien, salvo que en Internet explored 7 me arroja un error que dice:
linea:11
Caracter 3
Error: 'f' es nulo o no es un objeto
codigo:0
direccion...............
Cuando compruevo el script la resta tarda un tanto, es decir devo poner el cursor en distintos lados para que esta se efectue.
Te pediria el favor vefiricaras, para pder recomendar el script a mas usuarios, gracias!!!!!!!!!!!!!!!!!!!