Hej! :)
jag har två textrutor "startTime" och "stopTime"
Hur gör man för att, om man trycker på en knapp, beräkna differansen mellan klockslagen och presentera det i en tredje textruta; "diffTime"
Mvh
Henrik
11 svar · 459 visningar · startad av devotion
Hej! :)
jag har två textrutor "startTime" och "stopTime"
Hur gör man för att, om man trycker på en knapp, beräkna differansen mellan klockslagen och presentera det i en tredje textruta; "diffTime"
Mvh
Henrik
Hej :)
Har fått lite hjälp med min fråga...
Får det dock inte att fungerar riktigt. Det händer ingenting...
<script language="javascript">
function diff(val1, val2) {
val1 = val1.split(":");
val2 = val2.split(":");
tot1 = parseInt(val1[0])*60 + parseInt(val1[1]);
tot2 = parseInt(val2[0])*60 + parseInt(val2[1]);
hrs = math.floor((tot2-tot1)/60);
mins = (tot2-tot1)/60;
return hrs + ":" + mins;
}
</script>
...
<input name="startTime" type="text" id="startTime" value="<% =dStartTime %>" size="5" />
<input name="stopTime" type="text" id="stopTime" value="<% =dStopTime %>" size="5" />
<input name="calculate" type="button" id="calculate" onclick="document.getElementById('time').value = diff(document.getElementById('startTime').value, document.getElementById('stopTime').value);" value="Beräkna">
Mvh
Henrik
Hej!
Får följande felmeddelande i FF
Fel: math is not defined
Källkodsfil: editTime.asp
Rad: 14
rad 14: hrs = math.floor((tot2-tot1)/60);
Vad ska jag göra åt det?
Mvh
Henrik
Math. :)
Hehe...
Ibland finns svaret närmare än man anar...
http://www.webforum.nu/showthread.php?p=1054944#post1054944
Math kan inte skrivas math...
Nu fungerar funktionen i a f!!! Men den räknar inte rätt
Tid mellan 07:00 och 16:00 resulterar 9:9 vilket är lite galet...
Resultatet skall också bli ett decimaltal dvs tex 1 h och 30 min = 1,5 h
Jag pillar vidare med detta och kanske lär mig något på kuppen...
Hjälp tas dock tacksamt emot...
Mvh
henrik
Hehe... Jepp, du han precis före...
Men det finns lite andra problem... Peter S
..och skriver man 07:00 - 08:00 så blir det -7:-7
skriver jag 7:00 - 8:00 blir det 1:1
:q
Mvh
henrik
Hur många decimaler vill du ha?
det räcker väl med 2?? Jo det gör det!
Det är arbetstid som skall registreras, så det behöver inte vara mer exakt än så...
Mvh
Henrik
skulle man kunna ha en liten checkbox som drar av en timme om den är ikryssad. För lunch och fika 07:00 - 16:00 är ju 8h eftersom en timme räknas bort för lunch och fika...
Mvh
henrik
<script language="javascript">
function diff(val1, val2, lunch) {
var startArr = val1.split(":"),
stopArr = val2.split(":"),
startDate = new Date(),
stopDate = new Date();
startDate.setHours(startArr[0]);
startDate.setMinutes(startArr[1]);
stopDate.setHours(stopArr[0]);
stopDate.setMinutes(stopArr[1]);
var s = (stopDate.getTime() - startDate.getTime()) / 1000,
h = Math.floor(s / 3600),
m = Math.floor((s / 3600 - h) * 100) / 100;
return h + m - lunch.checked;
}
</script>
<form>
<input name="startTime" type="text" id="startTime" value="" size="5" />
<input name="stopTime" type="text" id="stopTime" value="" size="5" />
<input name="calculate" type="button" id="calculate" onclick="document.getElementById('time').value = diff(document.getElementById('startTime').value, document.getElementById('stopTime').value, this.form.elements['lunch']);" value="Beräkna">
<input type="checkbox" name="lunch">
<input name="time">
</form>
Kanoners! :bire