begin process at 2012 05 30 04:16:29
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

Débutants

 > 

Tester l'existance d'une case à cocher


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Tester l'existance d'une case à cocher

mercredi 1 mars 2006 à 09:41:03 | Tester l'existance d'une case à cocher

gyome314

Bonjour
 
Dans une page, j'ai un script PHP qui génère plusieurs cases à cocher nomées "box1", "box2", "box3", ...

lorsque qu'on valide le formulaire, je veux tester ces boxs, mais je ne connais pas le nombre exacte, je vise au max.

mais lorsque je teste une box qui n'existe pas dans ma boucle, j'ai forcemment une erreur du type "undefined":

for(var i=1; i<30; i++){
  if(eval("box"+i+".checked")==true){
     [---]
}}

comment faire pour passer au travers ?

merci d'avance

mercredi 1 mars 2006 à 12:23:02 | Re : Tester l'existance d'une case à cocher

Mindiell

php connait le nombre de cases, stockes ce nombredans une variable phph puis : for (var i=0;i<;i++) { ... }
mercredi 1 mars 2006 à 12:30:25 | Re : Tester l'existance d'une case à cocher

bultez

Membre Club

Bonjour,
un ch'tit exemple ?

<form name="frm">
   <input type="checkbox" name="box1" />
   <input type="checkbox" name="box2" checked />
   <input type="checkbox" name="box3" />
</form>
<script type="text/javascript">
 var n=1;
 while ( frm["box"+n] )
 {
  alert(frm["box"+n].name+"="+frm["box"+n].checked);
  n++;
 }
</script>

à mon humble avis, il vaudrait mieux :
° mettre id=box1,box2... et traiter document.getElementById("box"+n).checked
° mettre le même nom, box par exemple et faire
  for ( var n=0;n<frm.box.length;n++ )
  {
     frm.box[n].checked....

une remarque : à if ( quelque chose == true ) je préfère if ( quelque chose )
... mais chacun ses goûts ( et les vaches seront bien gardées ).

Cordialement. Bul. ~
Mon Site qu'il est à Moi ~

mercredi 1 mars 2006 à 12:35:26 | Re : Tester l'existance d'une case à cocher

bultez

Membre Club

oh ... croisement avec MinDiell
qui donne une solution tout aussi valable 
SI php connait le nombre de postes
( ce qui n'est pas toujours le cas )
donc tout dépend du contexte, comme toujours.
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
et quand je dis croisement, rien de sexuel là dedans, hein !

mercredi 1 mars 2006 à 12:41:47 | Re : Tester l'existance d'une case à cocher

Mindiell

Coucou, En même temps, si php les génère, il les connait forcément ;o) merci pour ta solution Bul, en tout cas ^^
mercredi 1 mars 2006 à 15:38:22 | Re : Tester l'existance d'une case à cocher

gyome314

Réponse acceptée !
Merci pour vos solutions les gars :)

Le pb avec la solution de Mindiell, c'est que dans la façon dont j'ai fait les choses, les numéros des box ne se suivent pas nécessairement linéairement :
on peut avoir box1, box2, box4,...
Donc le pb reste le meme.

Pour la solution de Bultez, j'ai pas testé, mais je pense que j'aurais eu le même pb...

J'ai trouvé une solution toute bête entre deux : mettre les boxes proprement dans un formulaire... lol

eval("box"+i) provoque une erreur si la boxe n'existe pas...
par contre : eval("document.monformulaire.box"+i) renvoit vrai ou faux en fonction de l'existance de la case...

Pourquoi ? je n'en ai aucune idée, mais comme quoi, quant on fait les choses proprement, tout marche à merveille :)

bon courage, A+
mercredi 1 mars 2006 à 15:51:30 | Re : Tester l'existance d'une case à cocher

Mindiell

euh, tu peux nous donner ta partie php qui met les box, histoire que je comprenne pourquoi ma solution serait pas bonne ? :o)
mercredi 1 mars 2006 à 16:00:55 | Re : Tester l'existance d'une case à cocher

bultez

Membre Club

si box# est dans un formulaire, il est nécessaire de
le dire : name_formulaire.name_box.? et aps name_box.?
sinon : inconnu.

quelle idée de générer des name/id non consécutifs ?

on pourrait aussi examiner tous les champs du formulaire
et traiter ceux qui sont des checkbox.
car eval, c'est assez gourmand, et tester si les champ existent,
je veux bien, mais on arrête quand ? avec une borne maxi ?
je n'aime pas trop moi, car si le nombre augmente, il faudra modifier
le script ( si on s'en souvient qu'il existe et est testé ce maxi ! )

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~

mercredi 1 mars 2006 à 16:03:35 | Re : Tester l'existance d'une case à cocher

Mindiell

les id des box non consecutifs sont peut-etre liés à un truc spécial. Par exemple : Choisissez la couleur de votre voiture : - 1 jaune - 2 vert - 4 bleu car la couleur 3 noir n'est pas accessible pour ce modèle... PS: non, je n'ai pas mauvais gout pour les couleurs de voiture :oP
mercredi 1 mars 2006 à 16:38:50 | Re : Tester l'existance d'une case à cocher

gyome314

En fait ma liste des boxes est liés à une liste stockée dans une BDD

Cette liste peut être gérée par les admins du site, pour ajouter de nouvelle case ou en supprimer d'autre...

de plus dans nom name="boxnum", num correspond à l'identifiant du champ dans ma BDD, ensuite, je fais une recherche sur les noms de boites validées pour savoir quels identifiants enregistrés (parceque je me sert du champ value pour tout autre chose).

Je sais pas si j'ai été clair, mais bon. c'est fait et ca marche impecc, c tout ce qui m'importe

Merci les jeunes ;)
A+


Cette discussion est classée dans : tester, case, box, cocher, existance


Répondre à ce message

Sujets en rapport avec ce message

case à cocher [ par santano ] bonjourje cherche un script qui me permet a partir d'une case a cocher de cocher ou decocher d'autre case merci d'avance sélection d'enregistrement par une case à cocher [ par SweetDreams ] Bonjour,A partir d'une liste d'enregistrements(devant chacun une case à cocher), comment arriver à supprimer les enregistrements cochés par un simple Cases à cocher [ par lavache13 ] Je suis en train de faire un formulaire avec des cases à cocher et j'aimerai savoir ce que retourne une case à cocher comme valeur. J'ai essayé checke Tester l'existance d'un champ dans un formulaire [ par notoriousFab ] BonjourJ'ai un form qui est cree dynamiquement et je voudrais savoir si c'est possible de tester l'existance d'un champ en Javascript par ne pas faire case a cocher et disabled [ par jackrichard ] bonjours a tous je n'ai quasiment aucune compétence en javascript donc ce code est peut etre conplétement faux. Ce que j'aimerais c'est que si ma case lien qui selectionne une case à cocher [ par astuces_jeux ] Bonjour y a-t-il moyen de faire une liste déroulante avec une sélection qui sert à activer une case à cocher la case à cocher désactive la liste dérou case a cocher ?? [ par michong ] salut a tousj'ai crée un form sur lequel se trouve une case a cocher et un calque.Cette case a coché permettrait a l'utilisateur d'afficher ou de masq case a cocher + php [ par jimmy69 ] Bonjour a tous, J'ai un p'tit souci au point de vue des cases cocher ! je vous explique j'ai un listing de contacts (nom, prenom etc...) que je liste 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èpte les conditions" pour que le bouton vali pb case à cocher formulaire [ par linniesurf75 ] Bonjour,je débute en JavaScript et j'ai un probléme, pour mieux comprendre voici mon code :je déclare une fonction javascript qui permet de cocher et


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,312 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales