---
title: "Validera select!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/155707-validera-select"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "oskars"
published: "2007-01-08T09:03:18.000Z"
updated: "2007-01-08T09:19:07.000Z"
replies: 6
views: 322
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/155707-validera-select"
---

# Validera select!

## #1 — oskars, 2007-01-08T09:03Z

Jag har sökt på wF, jag har sökt på Google... Jag har stretat och krånglat... jag är inte så bra på javascript så jag hittar aldrig felet   x( 

Jag vill validera min select som ser ut så här:

```
<form name="sign" onSubmit="return checkSignatur(this.form);">
	<select name="signatur">
		<option value="0">Signera</option>
		<optgroup label="Signaturer">
			<option value="sign01">Signatur</option>
		</optgroup>
	</select>
	<br />
	<input name="submit" type="submit" value="Retur OK">
</form>
```

Och det är med denna koden som jag försöker validera med, men det går inte   :bla 

```
function checkSignatur(s) {
	
	var sel = document.forms["sign"].elements["signatur"];

	if (sel.options[sel.selectedIndex].value == "0") {
                          alert("Du måste signera!");
		return false;
	}
}
```

Jag antar att problemet är lättlöst, men jag kan inte se det   :birp 

tacksam för hjälp!

oskar

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

## #2 — @nders, 2007-01-08T09:05Z

Det kan ju vara vettigt att låta funktionen returnera true någon gång...

Får du något javascriptfel?
Varför skickar du in formuläret i funktionen om du inte använder *s* i funktionen?

mvh

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

## #3 — The_Hulk, 2007-01-08T09:06Z

du returnerar aldrig värdet true i din valideringsfunktion

```
function checkSignatur(s) {
	
	var sel = document.forms["sign"].elements["signatur"];

	if (sel.options[sel.selectedIndex].value == "0") {
                          alert("Du måste signera!");
		return false;
	}
	return true;
}
```

om det bara är det vet jag inte men du kan börja med att testa det.

**/r** ähh, var inte tillräckligt snabb där   :(

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

## #4 — oskars, 2007-01-08T09:07Z

men mitt problem är att alert-fönstret inte kommer upp när någon valt att inte signera... :/

Försökte så här som du sa, men det blev ingen skillnad:

```
function checkSignatur(s) {
	
	var sel = document.forms["sign"].elements["signatur"];

	if (sel.options[sel.selectedIndex].value == "") {
		return false;
	} else {
		return true;	
	}
}
```

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

## #5 — @nders, 2007-01-08T09:13Z

Hmm... 

Varför har du ändrat till **value == ""** i jämförelsen? Har du ändrat i din option då också? Kan du inte gå direkt på selectedIndex, utan att bry dig om värdet?

1) Sätt id på din \<select\>.
2)

```
	var sel = document.getElementById("signatur");

	if (sel.selectedIndex == 0) {
		return false;
	} else {
		return true;	
	}
```

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

## #6 — oskars, 2007-01-08T09:14Z

Just det, gjorde lite ändringar under tiden, hoppas jag inte förvirrade för mkt!

Underbart @nders, tack så mkt! Det fungerar perfekt :) Tack tack alla som ville hjälpa!

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

## #7 — @nders, 2007-01-08T09:19Z

Vasse, och lycka till med resten. :bire

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/155707-validera-select
