Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

COCHER UN NOMBRE LIMITÉ DE CASES (CHECKBOX) DANS UN FORMULAIRE


Information sur la source

Catégorie :Formulaire Classé sous : checkbox, case, cocher, limité, formulaire Niveau : Initié Date de création : 31/10/2006 Date de mise à jour : 17/05/2007 17:04:50 Vu : 5 598

Note :
7 / 10 - par 2 personnes
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

Description

tout est dans le titre, ce script permet de limiter le nombre de checkbox cochées dans un formulaire; ici la limite est définie à 2 cases.
Ce script provient de http://www.js-examples.com/, comme j'ai eu du mal à le trouver je me permets d'en faire profiter
 

Source

  • <!-- DEBUT SCRIPT CASE A COCHER LIMITEE -->
  • <!-- JS-Examples - http://www.js-examples.com/-->
  • <script type="text/javascript" language="JavaScript">
  • var MAX_ALLOWED=2;
  • var clickedData=new Array(false,false,false,false);
  • function itemsClicked(){var i=0;for(var j=0;j<clickedData.length;j++)i+=clickedData[j]?1:0;return(i);}
  • function itemClicked(_v)
  • {
  • var ALLOW_THIS=true;
  • var x=itemsClicked();
  • if (x>=MAX_ALLOWED && !clickedData[_v])
  • {
  • ALLOW_THIS=false;
  • }
  • else
  • {
  • clickedData[_v]=clickedData[_v]?false:true;
  • eval("document.formulaire.r"+_v+".clicked=false;");
  • }
  • return (ALLOW_THIS); /* kill the event handler */
  • }
  • </script>
  • <form name="formulaire">
  • <INPUT name=r0 type=checkbox value=valeur1 onclick="return itemClicked(0)">Case 1
  • <INPUT name=r1 type=checkbox value=valeur2 onclick="return itemClicked(1)">Case 2
  • <INPUT name=r2 type=checkbox value=valeur3 onclick="return itemClicked(2)">Case 3
  • <INPUT name=r3 type=checkbox value=valeur4 onclick="return itemClicked(3)">Case 4
  • <!-- FIN SCRIPT CASE A COCHER LIMITEE -->
  • </form>
<!-- DEBUT SCRIPT CASE A COCHER LIMITEE -->
<!-- JS-Examples - http://www.js-examples.com/-->      
<script type="text/javascript" language="JavaScript">
var MAX_ALLOWED=2;
var clickedData=new Array(false,false,false,false);
function itemsClicked(){var i=0;for(var j=0;j<clickedData.length;j++)i+=clickedData[j]?1:0;return(i);}
function itemClicked(_v)
{
  var ALLOW_THIS=true;
  var x=itemsClicked();
  if (x>=MAX_ALLOWED && !clickedData[_v])
  {
    ALLOW_THIS=false;
  }
  else
  {
    clickedData[_v]=clickedData[_v]?false:true;
	eval("document.formulaire.r"+_v+".clicked=false;");
  }
  return (ALLOW_THIS); /* kill the event handler */
  
}
   </script>

<form name="formulaire">
<INPUT name=r0 type=checkbox value=valeur1 onclick="return itemClicked(0)">Case 1  
<INPUT name=r1 type=checkbox value=valeur2 onclick="return itemClicked(1)">Case 2  
<INPUT name=r2 type=checkbox value=valeur3 onclick="return itemClicked(2)">Case 3  
<INPUT name=r3 type=checkbox value=valeur4 onclick="return itemClicked(3)">Case 4
<!-- FIN SCRIPT CASE A COCHER LIMITEE -->
</form>

Conclusion

euh bon usage à tous
 

Historique

17 mai 2007 17:04:51 :
Petite correction très justement soulignée dans un commentaire de edigger: les checkboxes ont été renommées de r0 à rn et le script appelle désormais itemClicked(0) à itemClicked(n).

Commentaires et avis

signaler à un administrateur
Commentaire de eddyger le 06/11/2006 16:07:48

Bonjour,
ton code est bien mais il y a  juste un petit bug. Il ne faut pas oublier que le premier indice d'un tableau javascript est 0, or quand tu écris "return itemClicked(4)", tu ajoutes un élément supplémentaire (non voulu) dans ton tableau clickedData. Une correction serait de nommer les checkboxes de r0 à rn et d'appeler itemClicked(0) à itemClicked(n).

signaler à un administrateur
Commentaire de monsieurzouzou le 17/05/2007 17:06:46

Oups désolé eddyger j'ai écorché ton nom dans le commentaire de mise à jour; rooooo la honte

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

pb case à cocher formulaire [ par linniesurf75 ] Bonjour,je d&#233;bute en JavaScript et j'ai un probl&#233;me, pour mieux comprendre voici mon code :je d&#233;clare une fonction javascript qui perme Test sur checkbox [ par docbambou ] Voila j'ai mis en place des checkbox...suivant les case coch&#233; cela devra iafficher des informations d'une base de donn&#233;e Seulement pr le scr Case à cocher [ par sebalex ] Salut &#224; tous,J'aimerais faire un truc simple pour vous mais tr&#232;s rude pour moi.J'ai 4 cases &#224; cocher1. inscription2. soci&#233;t&#233;3 Formulaire [ par BioSpyke ] Bonjour, Voila j'd&#233;bute et j'essai de cr&#233;er un formulaire qui en gros ressemble &#224; &#231;a : Objet : 'liste d'objets' Quantit&#233; : ' checkbox validation formulaire js + bd [ par medicair ] BonjourTout dabord merci &#224; vous tous qui par vos posts ai pu me mettre &#224; la programmation sans m'en faire tout une montagne... breff.Voil&#2 Vérification de checbox help! [ par Dark_Kirua ] Bonjour,je recherche un scirpt qui permet de faire comme lors des inscriptions, cad cocher une case "j'acc&#232;pte les conditions" pour que le bouton Tester l'existance d'une case à cocher [ par gyome314 ] Bonjour&nbsp;Dans une page, j'ai un script PHP qui g&#233;n&#232;re plusieurs cases &#224; cocher nom&#233;es "box1", "box2", "box3", ...lorsque qu'on Checkbox ne marche pas dans Opera ?? [ par pam_ela ] Bonjour&nbsp;Le script suivant marche dans firefox et IE mais pas dans OperaQui peut m'aider ?Merci d'avance !________________________________________ Checkbox et formulaire dynamique [ par petitelarve ] bonjour, Je cherche un moyen d'afficher des liste &lt;select&gt; et  des textearea suite au check sur une checkbox.Par exemble , si on click sur la ch Formulaire [ par Thbraun ] Bonsoir,Je suis entrain de faire un petit truc pour le rangement de mes photos. J'utilise un formulaire pour catégoriser chaque photo, avec des cases


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.