---
title: "Checkbox problem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/146725-checkbox-problem"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "jockooono"
published: "2006-05-11T14:24:29.000Z"
updated: "2006-05-11T16:00:29.000Z"
replies: 3
views: 308
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/146725-checkbox-problem"
---

# Checkbox problem

## #1 — jockooono, 2006-05-11T14:24Z

Har använt ett script som automatiskt kryssa i alla kryssrutor när man kryssar i den kategorins kryssruta. Alltså om jag kryssa för kategori 1:s kryssruta så ska all kryssrutor som hör till denna kategori också kryssas i. Problemet är att om jag har mer än 10 kategorier och kryssar för kategori 1 så kommer alla kryssrutor som innehåller en 1:a också kryssas i (11,12,13...). Lite svårt att förklarar... Jag är ingen klippa på javascript så jag hajar inte riktigt vad "if (theForm.elements.className.indexOf(cName) !=-1){" gör men antar att det är där felet ligger. Till saken hör att jag loopar fram alla kryssrutor. Grymt tacksam för hjälp!

```
function checkAll(theForm, cName, allNo_stat) {
	var n=theForm.elements.length;
	for (var i=0;i<n;i++){
		if (theForm.elements[i].className.indexOf(cName) !=-1){
			if (allNo_stat.checked) {
			theForm.elements[i].checked = true;
			}
			else {
			theForm.elements[i].checked = false;
			}
		}
	}
}

<input type="checkbox" name="kat1" onClick="checkAll(document.getElementById('myform'), '1', this);"> Kategori 1
<input type="checkbox" class="1"> Kryssruta 1
<input type="checkbox" class="1"> Kryssruta 2

<input type="checkbox" name="kat2" onClick="checkAll(document.getElementById('myform'), '2', this);"> Kategori 2
<input type="checkbox" class="2"> Kryssruta 3
<input type="checkbox" class="2"> Kryssruta 4
...
<input type="checkbox" name="kat10" onClick="checkAll(document.getElementById('myform'), '10', this);"> Kategori 10
<input type="checkbox" class="10"> Kryssruta 5
<input type="checkbox" class="10"> Kryssruta 6
```

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

## #2 — nitro2k01, 2006-05-11T14:44Z

```
function checkAll(allNo_stat) {
	var theForm = allNo_stat.form;
	var n=theForm.elements.length;
	cName=allNo_stat.name.replace(/^kat/, "");

	for (var i=0;i<n;i++)
		if (theForm.elements[i].className==cName)
			theForm.elements[i].checked = allNo_stat.checked;

}

<input type="checkbox" name="kat1" onClick="checkAll(this);"> Kategori 1
<input type="checkbox" class="1"> Kryssruta 1
<input type="checkbox" class="1"> Kryssruta 2

<input type="checkbox" name="kat2" onClick="checkAll(this);"> Kategori 2
<input type="checkbox" class="2"> Kryssruta 3
<input type="checkbox" class="2"> Kryssruta 4
...
<input type="checkbox" name="kat10" onClick="checkAll(this);"> Kategori 10
<input type="checkbox" class="10"> Kryssruta 5
<input type="checkbox" class="10"> Kryssruta 6
```

Kodeb är bara testad i mitt huvud, men bör fungera.

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

## #3 — jockooono, 2006-05-11T15:20Z

Ser ut att fungera! Stort tack  ;)

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

## #4 — nitro2k01, 2006-05-11T16:00Z

En sista sak, vänligen acceptera mitt svar som slutgiltigt!

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/146725-checkbox-problem
