---
title: "min/max antal checkboxar"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/17739-min-max-antal-checkboxar"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Mav"
published: "2001-05-10T08:51:00.000Z"
updated: "2001-05-11T07:52:00.000Z"
replies: 9
views: 243
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/17739-min-max-antal-checkboxar"
---

# min/max antal checkboxar

## #1 — Mav, 2001-05-10T08:51Z

Jag vill kolla att max 2 checkboxar är förkryssade i ett formulär. Mitt problem är att "name" på checkboxarna är olika, de heter "p_c1", "p_c2" osv.
Om de haft samma "name" hade jag kunnat använda följande kodsnutt men hur gör jag nu när de har olika "name"?

```
<html>
<head>
<script language="JavaScript">
<!--
n=0
function rakna(w){
(document.foo.bar[w].checked==true)? n++ : n--;
} 
function koll(){
if(n<2){alert("Minst 2 måste bockas!"); return false}
if(n>2){alert("Max 2 får bockas!"); return false}
} 

//-->
</script>
</head> 

<form name=foo onsubmit="return koll();">
1: <input type="checkbox" name="bar" value="A1" onclick="rakna(0);"><br>
2: <input type="checkbox" name="bar" value="A2" onclick="rakna(1)"><br>
3: <input type="checkbox" name="bar" value="A3" onclick="rakna(2)"><br>
4: <input type="checkbox" name="bar" value="A4" onclick="rakna(3)"><br>
5: <input type="checkbox" name="bar" value="A5" onclick="rakna(4)"><br>
<Input type="submit">
</form>
</html>
```

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

## #2 — Johnsen, 2001-05-10T09:06Z

Räkna elementen i formuläret:

```
<head>
<script language="JavaScript">
<!--
n=0
function rakna(w){
(document.foo.elements[w].checked==true)? n++ : n--;
}
function koll(){
if(n<2){alert("Minst 2 måste bockas!"); return false}
if(n>3){alert("Max 3 får bockas!"); return false}
}
//-->
</script>
</head>
<form name=foo onsubmit="return koll();">
1: <input type="checkbox" name="p_c1" value="A1" onclick="rakna(0);"><br>
2: <input type="checkbox" name="p_c2" value="A2" onclick="rakna(1)"><br>
3: <input type="checkbox" name="p_c3" value="A3" onclick="rakna(2)"><br>
4: <input type="checkbox" name="p_c4" value="A4" onclick="rakna(3)"><br>
5: <input type="checkbox" name="p_c5" value="A5" onclick="rakna(4)"><br>
<Input type="submit">
</form>
```

\------------------
\- J-O-H-N-S-E-N -

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

## #3 — Mav, 2001-05-10T09:16Z

Det funkar inte...verkar som om att den inte kollar överhuvudtaget!? Jag kan skicka formuläret utan att kontroll görs.

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

## #4 — Mav, 2001-05-10T09:17Z

Kan det bero på att jag har en del fält innan checkboxarna?

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

## #5 — Johnsen, 2001-05-10T09:54Z

Japp, kolla här:

```
<form name="foo">                               -->> forms[0] 
<input type="text" name="text" value="A1">      -->> elements[0]
<input type="checkbox" name="p_c1" value="A2">  -->> elements[1]
<Input type="submit">                           -->> elements[2]
</form>
```

\------------------
\- J-O-H-N-S-E-N -

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

## #6 — Mav, 2001-05-10T10:17Z

Får det inte att funka ändå. Skriver man inte någont såhär:

```
<script language="JavaScript">
<!--
n=0
function rakna(w){
(document.register.elements[5].checked==true)? n++ : n--;
(document.register.elements[6].checked==true)? n++ : n--;
(document.register.elements[7].checked==true)? n++ : n--;
(document.register.elements[8].checked==true)? n++ : n--;
(document.register.elements[9].checked==true)? n++ : n--;
(document.register.elements[10].checked==true)? n++ : n--;
(document.register.elements[11].checked==true)? n++ : n--;
(document.register.elements[12].checked==true)? n++ : n--;
(document.register.elements[13].checked==true)? n++ : n--;
}
function koll(){
if(n<2){alert("Minst 2 måste bockas!"); return false}
if(n>2){alert("Max 2 får bockas!"); return false}
}
//-->
</script>
....
<form action="" method="post" name="register" onsubmit="return check()">
<input type="hidden" name="p_c1" value="ON">
<input type="text" name="aaa" size="40">
<input type="text" name="bbb" size="40">
<input type="text" name="ccc" size="40">
<input type="text" name="ddd" size="40">
....
<input type="checkbox" name="p_c2" value="ON" onclick="rakna(0)">
<input type="checkbox" name="p_c3" value="ON" onclick="rakna(0)">
<input type="checkbox" name="p_c4" value="ON" onclick="rakna(0)">
<input type="checkbox" name="p_c5" value="ON" onclick="rakna(0)">
osv...
```

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

## #7 — Johnsen, 2001-05-10T11:07Z

Nja...
Så här:

```
<head>
<script language="JavaScript">
<!--
n=0
function rakna(w){
(document.foo.elements[w].checked==true)? n++ : n--;
}
function koll(){
if(n<2){alert("Minst 2 måste bockas!"); return false}
if(n>3){alert("Max 3 får bockas!"); return false}
}
//-->
</script>
</head>

<form action="" method="post" name="register" onsubmit="return check()">
<input type="hidden" name="p_c1" value="ON">
<input type="text" name="aaa" size="40">
<input type="text" name="bbb" size="40">
<input type="text" name="ccc" size="40">
<input type="text" name="ddd" size="40">
<input type="checkbox" name="p_c2" value="ON" onclick="rakna(5)">
<input type="checkbox" name="p_c3" value="ON" onclick="rakna(6)">
<input type="checkbox" name="p_c4" value="ON" onclick="rakna(7)">
<input type="checkbox" name="p_c5" value="ON" onclick="rakna(8)">
...
```

\------------------
\- J-O-H-N-S-E-N -

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

## #8 — Mav, 2001-05-10T12:12Z

Funkar kanon nu men jag har ett annat problem. Har 2 script, ett som kontrollerar att alla fält är ifyllda och sedan det som kollar att endast 2 boxar är förkryssade. Problemet är att bara första kontrollen görs. Varför?

```
<script language="JavaScript">
<!-- Dölj

// Först här namnet på funktionen ( kontrollera ).

function kontrollera() {

// Här kontrolleras fältet namn så att det inte är tomt.

if (document.register.namn.value == "")
{ 
alert("Du har ej angett namn!")
return false; 
} 

// Här kontrolleras fältet adress så att det inte är tomt.

if (document.register.adr_1.value == "") 
{ 
alert("Du har ej angett adress!")
return false; 
} 

// Här kontrolleras fältet ort så att det inte är tomt.

if (document.register.ADR_2.value == "") 
{ 
alert("Du har ej angett ort!")
return false; 
}

// Här kontrolleras fältet epost så att det innehåller tecknet @.

if (document.register.EMAIL.value == "" &#0124;&#0124; 
document.register.EMAIL.value.indexOf('@', 0) == -1) 
{
alert("Ogiltig E-Post adress!"); return false; 
}

}
// -->
</SCRIPT>
<script language="JavaScript">
<!--
n=0
function rakna(w){
(document.register.elements[w].checked==true)? n++ : n--;
}
function koll(){
if(n<2){alert("Minst 2 måste bockas!"); return false}
if(n>2){alert("Max 2 får bockas!"); return false}
}
//-->
</script>
...
<form action="http://" method="post" name="register">
....
<input type="submit" value="GO" onclick="return kontrollera(); koll()" style="font-family: Verdana; font-size: 8pt">
```

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

## #9 — Johnsen, 2001-05-10T13:45Z

```
<html>
<head>
<script language="JavaScript">
<!-- Dölj
n=0
function rakna(w){
(document.register.elements[w].checked==true)? n++ : n--;
}

function kontrollera() {
if (document.register.namn.value == ""){alert("Du har ej angett namn!"); return false;} 
if (document.register.adr_1.value == ""){alert("Du har ej angett adress!"); return false;} 
if (document.register.ADR_2.value == ""){alert("Du har ej angett ort!"); return false;}
if (document.register.EMAIL.value == "" &#0124;&#0124; document.register.EMAIL.value.indexOf('@', 0) == -1){
alert("Ogiltig E-Post adress!"); return false; }

if(n<2){alert("Minst 2 måste bockas!"); return false}
if(n>2){alert("Max 2 får bockas!"); return false}
}
//-->
</script>
</head>

<form action="http://" method="post" name="register" onsubmit="return kontrollera();">
<input type="text" name="namn"><br>
<input type="text" name="adr_1"><br>
<input type="text" name="ADR_2"><br>
<input type="text" name="EMAIL"><br>
<input type="checkbox" name="p_c1" value="A1" onclick="rakna(4)"><br>
<input type="checkbox" name="p_c2" value="A2" onclick="rakna(5)"><br>
<input type="checkbox" name="p_c3" value="A3" onclick="rakna(6)"><br>
<input type="checkbox" name="p_c4" value="A4" onclick="rakna(7)"><br>
<input type="checkbox" name="p_c5" value="A5" onclick="rakna(8)"><br>
<input type="submit" value="GO" style="font-family: Verdana; font-size: 8pt">
</form>
```

\------------------
\- J-O-H-N-S-E-N -

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

## #10 — Mav, 2001-05-11T07:52Z

Funkar kanon!!!
Tusen tack!!

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/17739-min-max-antal-checkboxar
