begin process at 2010 03 21 05:59:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

compter le nombre de radio button


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

compter le nombre de radio button

jeudi 7 octobre 2004 à 11:39:25 | compter le nombre de radio button

misterdarth

Membre Club
Bonjour,
Lors de la saisie d'un formulaire, je cherche à tester certains champs afin de m'assurer que l'utilisateur n'a pas mis n'importe quoi.
Dans ce formulaires il y a, entre autre, des radio button.
Au niveau de mon bouton de validation, je fais appel à une fonction comme suit :
<input type="submit" value="Valider" onclick="javascript:return Verif_Forms(this.form);">
Le debut de la fonction est la suivante :

function Verif_Forms(MonForm)
{
var NbChecked;
var NbBox;
var NbRadio;

// Je recupere le nombre d'elements du formulaire
var NbElements = MonForm.elements.length

// Boucle tous les éléments du formulaire i
for (var l = 0; l < NbElements; l++)
{
Nom_Element = MonForm.elements[l].name;
Champ = MonForm.elements[l];
...

J'ai appliqué une politique de nom de champ de façon à savoir si celui-ci est obligatoire ou facultatif et de quel type il est. Dans le cas des radio buttons, voici l'instruction conditionnelle :
petite précision : dans mon formulaire j'ai 4 radio buttons qui s'appellent toutes Or_Radi

if ((Nom_Element.substring(0,1) == "o" || Nom_Element.substring(0,1) == "O") && (Nom_Element.substring(1,2) == "r" || Nom_Element.substring(1,2) == "R"))
{
NbChecked = 0;

var test = document.Fiche_acq.Or_radi.length;
alert(test);
// test me renvoie 4 ce qui est normal

var test2 = Nom_Element.length;
alert(test2);
// test2 me renvoie 7 ( soit la longueur du mot Or_radi)

var test3 = Champ.length;
alert(test3);
// test3 me renvoie Undefined


NbRadio = Nom_Element.length;
alert(NbRadio);
for (var k = 0; k < NbRadio; k++)
{
NbChecked = NbChecked +1;
if (document.Fiche_acq.Or_radi[k].checked == true)
{
break;
}
else if (NbChecked = NbRadio)
{
alert("Le champ suivant est obligatoire : " + Champ.id);
Champ.focus();
return false;
}
}
}
}

En fait, je n'arrive pas à compter le nombre de radio du meme nom avec mes variables. Et comme c'est une fonction que je souhaiterai utiliser pour tous mes formulaires, je ne peux pas laisser en dur " document.Fiche_acq.Or_radi.length".
Pourriez vous m'aider un peu ?
jeudi 7 octobre 2004 à 12:37:49 | Re : compter le nombre de radio button

bultez

Membre Club
bonjour,
je ne sais pas si j'ai tout compris mais
s'agit-il de compter le nombre de
boutons radios dans un formulaire ?

for ( n=0;n<frm.elements.length;n++)
{ if (frm.elements[n].type=="radio") ....

frm étant le nom du formulaire,
teste tous les champs et regarde si
"radio", quel que soit son nom.
il suffit donc de compter ?
Cordialement Bul. [Site] [Mail]
jeudi 7 octobre 2004 à 13:07:31 | Re : compter le nombre de radio button

misterdarth

Membre Club
Il s'agit effectivement de compter le nombre de radio dans un formulaire. Mais plus particulierement de vérifier si l'utilisateur a bien selectionne une des radio buttons d'un meme groupe.

Par exemple, vous avez le choix entre :
Lundi, Mardi, Mercredi
Ces trois radio buttons on le meme nom ( jour ) mais des valeurs differentes ( respectivement Lundi, Mardi, Mercredi )

Dans ma fonction, je veux pouvoir compter le nombre de radio buttons present sur le formulaire et ayant le meme nom.

Ce que je voudrais c'est comprendre pourquoi je n'arrive pas à compter le nombre de radio dans mon code.



jeudi 7 octobre 2004 à 14:25:49 | Re : compter le nombre de radio button

bultez

Membre Club
exemple : le but du jeu :
contrôler si, dans une série de <input type=radio
de même nom, l'un est coché

<HTML>
<HEAD>
<TITLE></TITLE>
<script type="text.javascript">
function ctr()
{var rad="",ok;
for ( n=0;n<frm.elements.length;n++)
{if (frm.elements[n].type=="radio")
{if (rad!=frm.elements[n].name)
{rad=frm.elements[n].name;
ok=false;
for ( var i=0;i<document.getElementsByName(rad).length;i++)
{if (document.getElementsByName(rad)[i].checked)
{ok=true;
i=document.getElementsByName(rad).length; } }
if (!ok) alert(rad+" non coché"); } } } }
</script>
</HEAD>
<BODY>
<form name="frm">
r1-1<input type="radio" name="r1">
r1-2<input type="radio" name="r1">
r1-3<input type="radio" name="r1"><br>
r2-1<input type="radio" name="r2">
r2-2<input type="radio" name="r2">
r2-3<input type="radio" name="r2">
r2-4<input type="radio" name="r2">
r2-5<input type="radio" name="r2"><br>
<input type="button" onclick="ctr();" value="controle">
</form>
</BODY></HTML>

il faut examiner les champs du formulaire,
si c'est un input radio, si c'est la 1ère fois
que l'on "rencontre" son nom, contrôler si
l'un ce ces input radio est coché.
à adapter donc aux besoins ....
Cordialement Bul. [Site] [Mail]
vendredi 8 octobre 2004 à 00:06:01 | Re : compter le nombre de radio button

misterdarth

Membre Club
Ok. Je ne connaissais pas le GetElementsByName
Plutot pratique ! :)
Merci pour ton aide bultez
Je t'invite à jetter un coup d'oeil ici :
http://www.javascriptfr.com/code.aspx?ID=26669


Cette discussion est classée dans : champ, var, element, radio, length


Répondre à ce message

Sujets en rapport avec ce message

recup val champ radio [ par emixam ] Bonjourune question qui m embete depuis longtemps,j arrive pas a recuperer la valeur d un champs radio.form.mon_radio.valuemarche pas....:-( champ d'un formulaire suivant une selection radio [ par LiGrAnD ] Bonjour,je dois faire un formulaire recueillant des informations sur des personnes, mais les champs du formulaire doivent etre different celon la cate Fonction javascript [ par righton ] Bonjour voici une fonction pour mettre du bold ou de l'italic dans un champ de saisie :function format(f) { var str = document.selection.createRange( var elements name et champ [ par rafou77 ] bonjour voilà javascript c'est pas mon truc mais pourriez vous m'aider car j'ai un champ qui fait référence à mnt_credit qui est dans un script ici:fo comment recuperer val champ radio [ par marcse2 ] Bonjour,j'ai fabriquer un site et une page formulaire mais comment ou avec quoi je peu relir le contenu sans avoir devant chacune d'elle cette reponce ca coince avec cette fonction [ par B e N z ] salut tt le monde enfaite moi je suis en stage ds une société et on m'as charger de faire un formulaire pour leur site intranet mé le blem c que j'ava Bouton radio "dynamique" [ par mulbek ] Bonjour à tous, je voudrais faire un truc super simple à intégrer en PHP mais comme un gros nul j'y arrive pas (et j'ai cherché) : je voudrais qu'en c Question sur les boutons radio [ par nico1214 ] Bonjour,J'ai 18 boutons radio : nomBoutonRadio.length = 18J'ai 1 bouton radio : nomBoutonRadio.length me renvoit undefinedPourquoi ? recherche dans une listbox [ par patinaroulette ] salut a tous!!!  j'ai besoin d'aide SVPPPP le probleme est le suivant :  j'ai un champ de saisie et une liste box et lorsque je tape une serie de let DHTML fonctionne sous Firefox, Safari mais pas IE [ par durand2504 ]


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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,390 sec (3)

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