---
title: "Kolla om formulär är ifyllt!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/122049-kolla-om-formulär-är-ifyllt"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Alamartimo"
published: "2005-02-09T04:53:38.000Z"
updated: "2005-02-10T21:18:58.000Z"
replies: 14
views: 519
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/122049-kolla-om-formulär-är-ifyllt"
---

# Kolla om formulär är ifyllt!

## #1 — Alamartimo, 2005-02-09T04:53Z

Hejsan!

Finns det något annat sätt eller bättre sätt att kolla om ett formulär är ifyllt korrekt än det nedan? 

```
<script language="JavaScript"><!--

function kolla(fil) {
if ( document.namn.value == '')
{ 
        alert("Du har glömt att skriva in ditt namn!");
        document.namn.focus();
		return false;
    }
--!>

<INPUT type="submit" name="action" class="buttons" value="Skicka begäran!" onClick="return kolla()">
```

Vad jag är ute efter igentligen är att kolla om 2 fält har summan av ex 100

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

## #2 — Engine^, 2005-02-09T07:27Z

Om du vill använda dig av javascript för att kontrollera om fälten är rätt ifyllda måste du använda dig av type="button".

```
<script language="text/javascript" type="text/javascript">
function Validate()
{
  intField1 = parseInt(document.forms[0].firstValue.value);
  intField2 = parseInt(document.forms[0].secondValue.value);

  if (!isNaN(intField1) && !isNaN(intField2)
  {
    if (intField1 + intField2 == 100)
    {
      //Ok, posta formuläret
      document.forms[0].submit();
    }
    else
    {
      alert("Resultatet blir inte 100.");
    }
  }
  else
  {
    //Fel, något av värdena är inte numeriskt
    alert("Felaktiga värden");
  }
}
</script>

<form action="sidan.asp" method="post">
  Värde 1: <input type="text" name="firstValue" value=""><br>
  Värde 2: <input type="text" name="secondValue" value=""><br>
  <input type="button" value="Skicka" onClick="Validate();">
</form>
```

Eller liknande...

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

## #3 — Alamartimo, 2005-02-09T10:22Z

Okej.. 
jag har ju annan info som skall postas också som jag redan kollar så att det inte är tomt med javascript som jag visade ovan. 
Kan man baka in det du skrev Engine^ ??

Försökte mig på att i nästa sida göra en koll innan insert men det blev inte så bra  :e

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

## #4 — Engine^, 2005-02-09T12:08Z

Tja, du får ju göra olika funktioner beroende på vad du ska kontrollera.

Exempel för att kolla om något är tomt

```
function ValidateString(strSource)
{
  strThis = new String(strSource)

  if (strThis.length == 0)
    alert("Tom sträng!");
  else
    document.forms[0].submit();
}
```

Men det är klart du kan göra kollen på nästa sida också.

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

## #5 — Alamartimo, 2005-02-09T13:49Z

Okej. 

Jag får trixa lite till med det  :) 

Tack för att du bolla det med mig Engine^

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

## #6 — Engine^, 2005-02-09T19:46Z

Varsågod :)

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

## #7 — PepeJeria, 2005-02-10T08:15Z

> **Engine^ skrev:**
>
> Om du vill använda dig av javascript för att kontrollera om fälten är rätt ifyllda måste du använda dig av type="button".

Detta stämmer inte riktigt, man kan även använda sig av type="submit". 

Exempel:

```
<script type="text/javascript">
function validateForm(form)
{
	if(!form.name.value)
	{
		alert("Du har glömt att skriva in ditt namn!");
		return false;
	}
	
	return true;
}
</script>

<form action="page.asp" onsubmit="return validateForm(this);">
	<input type="text" name="name"> 
	etc...
	<input type="submit">
</form>
```

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

## #8 — Alamartimo, 2005-02-10T08:30Z

Fick lösa det med att jag kollade värdena för de 2 fälten på nästa sida och en 

```
<meta http-equiv="Refresh" content="0; URL=practice.asp">
```

.

Blev inte riktigt som jag ville men jag får ge mig på det igen vid ett senare tillfälle. :) 

Fick inte till det med Javascript som jag ville.

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

## #9 — Alamartimo, 2005-02-10T08:39Z

Fast har Någon lust att klura lite på det så är det fritt fram  :e   ;) 

Så här se javan ut nu som kollar om fält är tomma + så att 2 fält inte har ett värde mer än 50

```
<script language="JavaScript"><!--
function check(fil) {
if ( document.dopractice.fwing.value == '')
{ 
        alert("No Value given for Front Wing");
        document.dopractice.fwing.focus();
		return false;
    }

	if (document.dopractice.rwing.value == '') {
        alert("No Value given for Rear Wing");
        document.dopractice.rwing.focus();
		return false;
    }

	if (document.dopractice.fwing.value > '50') {
        alert("Value for Front Wing can't be more then 50");
        document.dopractice.fwing.focus();
		return false;
    }

	if (document.dopractice.rwing.value > '50') {
        alert("Value for Rear Wing can't be more then 50");
        document.dopractice.rwing.focus();
		return false;
    }

	if (document.dopractice.fbrake.value == '') {
        alert("No Value given for Front Brake");
        document.dopractice.fbrake.focus();
		return false;
    }

	if (document.dopractice.rbrake.value == '') {
        alert("No Value given for Rear Brake");
        document.dopractice.rbrake.focus();
		return false;
    }
 else
{
		document.dopractice.submit();
		return true;}
}
// -->
</script>
```

Men sen är det då fbrake och rbrake som jag vill kolla summan så att de 2 värdena är exakt 100 varken mer eller mindre.

Fick ju göra så att när den kör dopractice.asp så plussade jag de värdena och kollade så det vart 100 och körde en If sats på det som skickar användarna tillbaks till practice.asp.
Känns inte riktigt rätt :OO

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

## #10 — J.N., 2005-02-10T10:02Z

HEJ!

Additionen borde bli såhär:

```
if (document.dopractice.fwing.value + document.dopractice.rwing.value != 100) {
        alert("Fwing plus rwing must be 100!");
        document.dopractice.fwing.focus();
        return false;
}
```

Eventuellt kanske du behöver eval() runt varje value.
<http://www.devguru.com/Technologies/vbscript/quickref/eval.html>

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

## #11 — Alamartimo, 2005-02-10T12:05Z

J.N.

Din variant krävde att man inte hade 100. 
Hade jag 100 i värdena totalt så fick jag en Alert inte annars.

Men det var klart intressant..  :) 

Snart så \*hehe\*

Såg nu till min fasa att min andra variant som jag gjort gör att det blir helt fel.. Den hoppar över några summeringar på sidan som kollar så det är 100...

\*hum\*

Tja får jobba vidare på det....

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

## #12 — J.N., 2005-02-10T12:31Z

HEJ!

> **Alamartimo skrev:**
>
> J.N.Din variant krävde att man inte hade 100. 
> Hade jag 100 i värdena totalt så fick jag en Alert inte annars.

Mitt kod tolkar jag som att om värdeett+värdetvå inte är 100 ska den säga till.

Om det skulle vara 9 eller 122 borde den säga till; är det 100 säger den inte till :q 

Ändra ! till ett = till, då borde den säga till när det är endst 100, dvs du kommer inte förbi om du inte gör fel.

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

## #13 — Alamartimo, 2005-02-10T15:01Z

Okej nu vet jag vad problemet är.

Värden jag får fram blir inte rätt

fbrake + rbrake lägger bara ihop talen  ex 10+10 blir 1010

prövade med 10+0 och det funkade vilket innebär att den plussar inte talen utan bara lägger ihop dom.

Som du sa tidigare så måste jag nog köra Eval() men jag vet inte riktigt hur jag får inte det i koden?

Juste att du försöker löse det här  :)

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

## #14 — J.N., 2005-02-10T15:57Z

HEJ!

Varsågod!

Testa först att göra om det till nummer med CInt, <http://www.devguru.com/Technologies/vbscript/quickref/cint.html>
CInt(document.dopractice.fwing.value)

Om det inte fungerar använder du Eval runt det, ev utan CInt.
<http://www.devguru.com/Technologies/vbscript/quickref/eval.html>

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

## #15 — Alamartimo, 2005-02-10T21:18Z

Ahhh äntligen fick jag rätt på det..  :) 

Har prövat alla möjliga kombinationer etc..

Men jag löste det med parseInt.

```
if (parseInt(document.dopractice.fbrake.value) + parseInt(document.dopractice.rbrake.value) != '100') {
        alert("FBrake plus RBrake must be 100!");
        document.dopractice.fbrake.focus();
        return false;
```

Men jag hade aldrig fixat utan din hjälp J.N.  :e 

Tackar...

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/122049-kolla-om-formulär-är-ifyllt
