webForumDet fria alternativet

beräkna tid från två textrutor

11 svar · 459 visningar · startad av devotion

devotionMedlem sedan jan. 20013 582 inlägg
#1

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

devotionMedlem sedan jan. 20013 582 inlägg
#2

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&auml;kna">

Mvh
Henrik

devotionMedlem sedan jan. 20013 582 inlägg
#3

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

Peter SMedlem sedan dec. 20025 483 inlägg
#4

Math. :)

devotionMedlem sedan jan. 20013 582 inlägg
#5

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

devotionMedlem sedan jan. 20013 582 inlägg
#6

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

Peter SMedlem sedan dec. 20025 483 inlägg
#7

Hur många decimaler vill du ha?

devotionMedlem sedan jan. 20013 582 inlägg
#8

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

devotionMedlem sedan jan. 20013 582 inlägg
#9

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

Peter SMedlem sedan dec. 20025 483 inlägg
#10
<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&auml;kna">
	<input type="checkbox" name="lunch">
	<input name="time">
</form>
devotionMedlem sedan jan. 20013 582 inlägg
#11

Hejsan! :)
Det är ju så man blir tårögd av lycka!! Vad fint det blev!

Perfekt!

Mvh
Henrik

Peter SMedlem sedan dec. 20025 483 inlägg
#12

Kanoners! :bire

131 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)