![]() |
|
|
|||||||
| Javascript Här diskuteras det som rör Javascript, AJAX, DOM & DHTML. |
![]() |
|
|
Trådverktyg | Visningsalternativ |
|
|
#1 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
beräkna tid från två textrutor
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
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
#2 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
Hej
![]() Har fått lite hjälp med min fråga... Får det dock inte att fungerar riktigt. Det händer ingenting... Kod:
<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">
Henrik
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
#3 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
Hej!
Får följande felmeddelande i FF Kod:
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
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
#4 |
|
Medlem
Registrerad: 2002-12-15
Ort: Hudiksvall
Inlägg: 5 477
Lösningar: 806 |
Math.
|
|
|
|
|
|
#5 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
Hehe...
Ibland finns svaret närmare än man anar... http://www.webforum.nu/showthread.ph...44#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
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
#6 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
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 Mvh henrik
__________________
I'm not a slave to a god that doesn't exist... Senast redigerad av devotion, 2005-12-14 klockan 22:36 |
|
|
|
|
|
#7 |
|
Medlem
Registrerad: 2002-12-15
Ort: Hudiksvall
Inlägg: 5 477
Lösningar: 806 |
Hur många decimaler vill du ha?
|
|
|
|
|
|
#8 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
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
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
#9 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
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
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
Markerad som löst av devotion #10 |
|
Medlem
Registrerad: 2002-12-15
Ort: Hudiksvall
Inlägg: 5 477
Lösningar: 806 |
Kod:
<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>
Senast redigerad av Peter S, 2005-12-15 klockan 09:18 |
|
|
|
|
|
#11 |
|
Medlem
Registrerad: 2001-01-20
Ort: Karlskrona
Inlägg: 2 706
Lösningar: 13 |
Hejsan!
![]() Det är ju så man blir tårögd av lycka!! Vad fint det blev! Perfekt! Mvh Henrik
__________________
I'm not a slave to a god that doesn't exist... |
|
|
|
|
|
#12 |
|
Medlem
Registrerad: 2002-12-15
Ort: Hudiksvall
Inlägg: 5 477
Lösningar: 806 |
Kanoners!
|
|
|
|
![]() |
| Trådverktyg | |
| Visningsalternativ | |
|
|