webForumDet fria alternativet

Checka alla checkbox samtidigt

3 svar · 238 visningar · startad av Broms

BromsMedlem sedan sep. 2002190 inlägg
#1

i denna kod, som jag hittade i detta forum, kryssas en radiobox i, om någon av kryssrutorna checkas, hur vänder man på detta, så att alla kryssrutor kryssas i om radiorutan checkas? Jag tänkte använda detta i ett litet email projekt, så att man kan tömma en sida i inboxen snabbt och enkelt. Detta var koden jag hittade:

<script type="text/javascript">
<!--

function checkCat(n){
var form = document.forms["foo"];

    for(var i=0; i\<form.elements.length; i++){
            if(form.elements*.type == "checkbox" && form.elements*.name.indexOf(n) != -1) continue;
            form.elements*.checked = false;
    }

    form.elements\[n\].checked = true;

};

//-->
</script>

<body>

<form name="foo">
<div>
<dl>
<dt><input type="radio" name="kat1"></dt>
<dd><input type="checkbox" name="kat1_item1" onclick="checkCat('kat1')"></dd>
<dd><input type="checkbox" name="kat1_item2" onclick="checkCat('kat1')"></dd>
<dd><input type="checkbox" name="kat1_item3" onclick="checkCat('kat1')"></dd>
<dd><input type="checkbox" name="kat1_item4" onclick="checkCat('kat1')"></dd>
</dl>
</div>
<div>
<dl>
<dt><input type="radio" name="kat2"></dt>
<dd><input type="checkbox" name="kat2_item1" onclick="checkCat('kat2')"></dd>
<dd><input type="checkbox" name="kat2_item2" onclick="checkCat('kat2')"></dd>
<dd><input type="checkbox" name="kat2_item3" onclick="checkCat('kat2')"></dd>
<dd><input type="checkbox" name="kat2_item4" onclick="checkCat('kat2')"></dd>
</dl>
</div>
</form>

</body>

MVH BromZ***

BromsMedlem sedan sep. 2002190 inlägg
#2

Det vore nog lättast om man bytte ut radiorutan i toppen så att även denna ruta kryssas ur om man klickar igen, och att då alla andra rutor un-checkas..

Peter SMedlem sedan dec. 20025 484 inlägg
#3

Exempel:

<head>

<script type="text/javascript"> 
<!-- 

function checkAll(o){
	for(var i=0; i<o.form.elements.length; i++){
		if(o.form.elements[i].name.indexOf(o.name) != -1)
			o.form.elements[i].checked = (o.checked == false) ? false : true;
	}
}; 

//--> 

</script> 

</head>

<body> 

<form name="foo"> 
<div> 
<dl> 
     <dt><input type="checkbox" name="kat1" onclick="checkAll(this)"></dt> 
     <dd><input type="checkbox" name="kat1_item1"></dd> 
     <dd><input type="checkbox" name="kat1_item2"></dd> 
     <dd><input type="checkbox" name="kat1_item3"></dd> 
     <dd><input type="checkbox" name="kat1_item4"></dd> 
</dl> 
</div> 
</form> 

</body>

:)

BromsMedlem sedan sep. 2002190 inlägg
#4

underbart, tack så mycket Peter!

MVH BromZ

128 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
125 ms — hämta tråd, inlägg och bilagor (db)