Posez votre question Signaler

Controler des checkbox

Catherine - Dernière réponse le 11 août 2010 à 18:08
Bonjour à tous,

j'ai un formulaire html avec 19 checkbox. Voici ma question, je voudrais que le visiteur une fois qu'il a coché 6 checkbox au choix que si il en coche une 7 eme qu'il y ai un message qui lui dise qu'il ne peut en cocher + que 6
Pouvez vous m'aider à trouver la solution

Très grand merci
Lire la suite 

Controler des checkbox »

11 réponses
Réponse
+14
moins plus
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
	<title>Untitled</title>
	<script>
	function checkSelect(elmId){
	  maxOptionsSelect = 7;
	  form = document.all("detailform");
	  inputs = form.getElementsByTagName("input");
	  count = 0;
	  for(i=0 ; i<inputs.length ; i++){
	    if(inputs[i].type=="checkbox" && inputs[i].checked==true){
		  count++;
		}
	  }
	  
	  if(count > maxOptionsSelect){
	  	document.all(elmId).checked=false;
	  	alert("Vous ne pouvez sélectionner que maximum " + maxOptionsSelect + " options");
		return false;
	  }
	  return false;
	}
	</script>
</head>

<body>

<form name="detailform">
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_1"/>a<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_2"/>b<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_3"/>c<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_4"/>d<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_5"/>e<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_6"/>f<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_7"/>g<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_8"/>h<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_9"/>i<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_10"/>j<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_11"/>k<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_12"/>l<br/>
	  <input type="checkbox" onclick="javascript:checkSelect(this.id);" id="cb_13"/>m<br/>	  	  	  		  	  	  	  	  	  
</form>

</body>
</html>


;-)
HackTrack
HackTrack- 3 nov. 2005 à 20:40
Pas de quoi

A ton service...

;-)
HackTrack
Berniek - 11 août 2010 à 13:55
C'est possible qu'il y aie des soucis avec Firefox ?
HackTrack- 11 août 2010 à 18:08
Non. Je viens de tester avec Firefox 3.5.8, Google Chromer et IE 7 et le script fonctionne avec les 3 navigateurs. Bien à toi

HackTrack
Ajouter un commentaire
Réponse
+1
moins plus
il faut faire ça en javascript

à chaque fois q'un utilisateur coche ou décoche un checkbox ( onclick ) tu appelles une fonction

la fonction va parcourir la totalité des checkbox et compter combien sont cochés (.checked = true)
si ça dépasse 6, tu fais ton alert('message d erreur') et tu décoches la box qui vient d'etre modifiée.

Catherine - 3 nov. 2005 à 14:43
Bonjour ,

je n'y connais absolument rien en programmation, et c'est du charabia pour moi, merci de ton aide en tout cas mais peux tu m'écrire le code pour y voir + clair ?
Ce serait hyper gentil de ta part
merci
Ajouter un commentaire
Réponse
+1
moins plus
Pour dire ça autant se taire...

Lool t'as vu ton message la ! :D

S.V.I.N.K.E.L.S
-->on se gave d'orge d'houblon et de malt a wishy: C real killer
Ajouter un commentaire
Ce document intitulé « Controler des checkbox » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?