---
title: "beräkna tid från två textrutor"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/139300-beräkna-tid-från-två-textrutor"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "devotion"
published: "2005-12-14T14:48:23.000Z"
updated: "2005-12-14T23:04:40.000Z"
replies: 11
views: 465
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/139300-beräkna-tid-från-två-textrutor"
---

# beräkna tid från två textrutor

## #1 — devotion, 2005-12-14T14:48Z

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

Permalänk: https://www.webforum.nu/p/139300

## #2 — devotion, 2005-12-14T20:47Z

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

Permalänk: https://www.webforum.nu/p/1729028

## #3 — devotion, 2005-12-14T22:15Z

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

Permalänk: https://www.webforum.nu/p/1729072

## #4 — Peter S, 2005-12-14T22:25Z

**M**ath.  :)

Permalänk: https://www.webforum.nu/p/1729078

## #5 — devotion, 2005-12-14T22:28Z

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

Permalänk: https://www.webforum.nu/p/1729080

## #6 — devotion, 2005-12-14T22:29Z

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

Permalänk: https://www.webforum.nu/p/1729083

## #7 — Peter S, 2005-12-14T22:50Z

Hur många decimaler vill du ha?

Permalänk: https://www.webforum.nu/p/1729090

## #8 — devotion, 2005-12-14T22:51Z

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

Permalänk: https://www.webforum.nu/p/1729091

## #9 — devotion, 2005-12-14T22:53Z

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

Permalänk: https://www.webforum.nu/p/1729093

## #10 — Peter S, 2005-12-14T22:57Z

```
<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>
```

Permalänk: https://www.webforum.nu/p/1729095

## #11 — devotion, 2005-12-14T23:03Z

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

Perfekt!

Mvh
Henrik

Permalänk: https://www.webforum.nu/p/1729098

## #12 — Peter S, 2005-12-14T23:04Z

Kanoners!  :bire

Permalänk: https://www.webforum.nu/p/1729101

---

Tråden på webben: https://www.webforum.nu/amne/javascript/139300-beräkna-tid-från-två-textrutor
