---
title: "problem med komma i if-sats"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/155799-problem-med-komma-i-if-sats"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "urban_hahne"
published: "2007-01-09T21:35:06.000Z"
updated: "2007-01-15T20:34:23.000Z"
replies: 10
views: 573
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/155799-problem-med-komma-i-if-sats"
---

# problem med komma i if-sats

## #1 — urban_hahne, 2007-01-09T21:35Z

Jag vill kolla om det finns ett komma i texten
Varför funkar inte detta:

```
if (charge1Tmp != ",") {.......
```

när detta funkar:

```
if (charge1Tmp != "A") {.......
```

hur skriver jag komma på annat sätt för att få det att funka?
mvh
Urban

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

## #2 — stattin, 2007-01-09T21:52Z

om texten innehåller komma

```

if(charge1Tmp.indexOf(",") != -1)
```

eller om texten inte innehåller ett komma:

```

if(charge1Tmp.indexOf(",") [B]==[/B] -1)
```

borde funka..

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

## #3 — urban_hahne, 2007-01-09T22:06Z

NOP. funkade inte. Bokstäver funka men inte vissa specialtecken. I asp skriver man ju ofta chr(asciivärdet) när man vill jämföra specialtecken. t.ex if variabelA=CHR(44) then .....
vad är motsvarigheten i javascript.

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

## #4 — Peter S, 2007-01-09T22:14Z

```
String.fromCharCode(65);
```

Vad är egentligen *charge1Tmp*?

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

## #5 — stattin, 2007-01-09T22:27Z

du måste ha någe diverse special fuffens för dig.. :)

65 vart ju A var det inte komma tecknet han skulle åt??

just ja.. 44..   :x

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

## #6 — Peter S, 2007-01-09T22:49Z

Jo, jag gav bara ett exempel. Jag utgår från att Urban klurar ut vad som behöver ändras.

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

## #7 — urban_hahne, 2007-01-09T23:33Z

Jag får det inte att funka. Vad jag vill är att validera ett fält som får innehålla ett decimaltal med eller utan minustecken och med antingen ett decimalkomma eller en decimalpunkt.
Koden ser ut så här när den funkar för att godkänna talet med decimalpunkt och minustecken. Men jag vill även kunna skriva decimalkomma utan att få felmeddelande.

```
function checkCharge1(){		
		var charge1Tmp=document.newManifestForm3.charge1.value;			
		if (charge1Tmp != "-"){ 		
		if(isNaN(charge1Tmp)){
		alert("Amount 1 have to be a value with or without decimal point!");			
		charge1Tmp=charge1Tmp.substring(0,charge1Tmp.length-1);					
		document.newManifestForm3.charge1.value=charge1Tmp;	
		}
		}
		document.newManifestForm3charge1.value=charge1Tmp;							
		}
```

hur gör jag?

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

## #8 — Peter S, 2007-01-10T10:39Z

Enklast är kanske att använda ett regexp

```
function checkCharge1()
{
  var val = document.newManifestForm3.charge1.value.replace(/,/g, ".");
  if (/^-?\d+\.\d+$/.test(val)){
    alert("input okay");
  } else {
    alert("input not okay");
  }
}
```

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

## #9 — urban_hahne, 2007-01-15T19:56Z

Det ser komplicerat utmed all /  \\ m.m kan man få en enkel förklaring om vad allt står för. Jag har lite svårt för att använda kod som jag inte förstår. Även om den funkar. Kanske det finns någon bra länk till lite mer info.

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

## #10 — Peter S, 2007-01-15T20:01Z

Den teknik som utnyttjas kallas *regular expressions*. Ett försök till förklaring följer:

```
function checkCharge1()
{
  var val = document.newManifestForm3.charge1.value.replace(/,/g, "."); //ersätt alla , med . och spara resultatet i val

  //här undersöker vi innehållet i val
  //^   matcha början av val
  //-?  matcha ett eller inget minustecken
  //\d+ matcha en eller flera siffror
  //\.  matcha en punkt
  //\d+ matcha en eller flera siffror
  //$   matcha slutet av val 
  if (/^-?\d+\.\d+$/.test(val)){
    alert("input okay");
  } else {
    alert("input not okay");
  }
}
```

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

## #11 — urban_hahne, 2007-01-15T20:34Z

Kanonbra! Med din hjälp och med bra info från
<http://www.javascriptkit.com/javatutors/re.shtml>
står det helt klart. En får tacke.

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/155799-problem-med-komma-i-if-sats
