webForumDet fria alternativet

Räkna antal checkboxar som är ikryssade

JavaScript

4 svar · 238 visningar · startad av Koggen

Medlem sedan juni 2002169 inlägg
Frågan#1

Jag har följande lilla javascriptproblem:

Jag har ett formulär med ett antal checkboxar. Jag vill att man bara skall kunna kryssa i tre av dom. När fjärde rutan kryssas i dyker en alert-ruta upp och talar om det.

Går detta att göra? Jag hittade inget om det när jag sökte..

*Håller tummarna*

;)

Medlem sedan juni 20004 308 inlägg
#2

Har checkboxarna som det skall gälla samma namn, eller skall det gälla samtliga checkboxar i formuläret?

Medlem sedan juni 2002169 inlägg
#3

Dom har alla samma namn, dom listas från en databas.

Medlem sedan juni 20004 308 inlägg
#4

Ok.

<script type="text/javascript">
function checkthem(obj){
	var i=0;
	for(var n=0;n<obj.form.length;n++){
		i+=(obj.form[n].type=="checkbox" && obj.form[n].name==obj.name && obj.form[n].checked)?1:0;
	}
	if(i>3){ alert("Max 3..."); obj.checked=false; }
}
</script>

<form>
<input type="checkbox" name="foo" value="a" onclick="checkthem(this);">
<input type="checkbox" name="foo" value="b" onclick="checkthem(this);">
<input type="checkbox" name="foo" value="c" onclick="checkthem(this);">
<input type="checkbox" name="foo" value="d" onclick="checkthem(this);">
</form>
Medlem sedan juni 2002169 inlägg
#5

Tackar så mycket. Precis vad jag var ute efter.

:h

458 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
314 ms — deklarationer (db)
0 ms — hämta statistik (cache)
140 ms — hämta tråd, inlägg och bilagor (db)
315 ms — ändringar (db)