---
title: "Tidpunktskontroll"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/121851-tidpunktskontroll"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Klauz"
published: "2005-02-06T18:31:20.000Z"
updated: "2005-02-07T10:03:52.000Z"
replies: 3
views: 210
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/121851-tidpunktskontroll"
---

# Tidpunktskontroll

## #1 — Klauz, 2005-02-06T18:31Z

Tjo!

Jag har ett formulär där man ska skriva in ett klockslag. Sedan när man submitar formuläret startar en felkontroll av formuläret.

Formatet måste vara såhär 12:00  (2 siffror + kolontecken + 2 siffror) för att fungera i databasen.

Har börjat lite smått men får det inte att funka! Vad betyder isFinite och charAt? Usch, jag är så dålig på javascript! x( 

if(document.step3.tid.value.length == 5) {   
  if(document.step3.tid.value.charAt(2) != ":") {
	tidfel = 1
  }
  if(isFinite(document.step3.tid.value.charAt(0)) != true \|\| isFinite(document.step3.tid.value.charAt(1)) != true \|\| isFinite(document.step3.tid.value.charAt(3)) != true \|\| isFinite(document.step3.tid.value.charAt(4)) != true) {
	tidfel = 2
  }
} else {
 tidfel = 3
}

Jag vill att scriptet ska kolla så att det är siffror i 1,2,4 och 5:e teckenrutan, samt att 3:e rutan innehåller ett kolon. Nu funkar det att skriva in bokstäver bland siffrorna.. så nåt är väl fel med isFinite antar jag..

mvh
Martin

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

## #2 — dectgap, 2005-02-06T18:53Z

*isFinite* kontrollerar ifall argumentet är ett ändligt tal, så det är inget du behöver använda.

Två olika sätt att lösa det:

1\. Regexp

```
if(/^(0?[0-9]|1[0-9]|2[0-3]):([0-5][0-9])$/.test(document.step3.tid.value)) {
	// Giltigt tidsformat
}
```

2\. Dela vid kolon och behandla som tal:

```
if(parts.length == 2 && parts[0] >= 0 && parts[0] < 24 && parts[1] >= 0 && parts[1] < 60) {
	// Giltigt tidsformat
}
```

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

## #3 — Klauz, 2005-02-07T09:41Z

Tackar! Ska testa direkt!

Vad menar du med ändligt tal?

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

## #4 — Jojoxx, 2005-02-07T10:03Z

Ett ändligt tal (enligt javascript) är ett tal som är inom ramen för vad javascript (i.e. interpretern) klarar av att hantera. Detta exempel ses normalt som oändligt, även om det inte är det egentligen (bara rättså stort);

```
var a=Math.pow(10,1000);
alert(isFinite(a));
```

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/121851-tidpunktskontroll
