Aller au contenu

Vérification sélection bouton radio


siriu

Sujets conseillés

Bonjour,

J'ai deux formulaires pour lequel j'exécute le même script afin de vérifier qu'un bouton radio à bien été sélectionne.


function saveOnlyIfSelected(form){
var compteur = 0;
for(i = 0; i < form.service.length; i++){
if(form.service[i].checked)
{
compteur++;
}

if (1 <= compteur)
{
return 1;
}
}

}

Dans le formulaire ou j'ai deux boutons radio (ayant le même name "service") mon script fonctionne

En revanche dans mon formulaire ou j'ai un seul bouton radio (name "service"), ça ne fonctionne pas... il me renvoi toujours "false" même si j'ai coché le bouton radio "service"

Pouvez vous me dire ce qui ne vas pas ?

Merci pour votre aide

Lien vers le commentaire
Partager sur d’autres sites

Javascript a un fonctionnement différent, selon qu'il y a un seul bouton radio ou plusieurs portant le même name. En gros, s'il y en a plusieurs, il considère qu'il a un tableau, et donc la méthode .length fonctionne. Mais s'il n'y en a qu'un seul, contrairement à ce qu'on pourrait croire, le .length ne renvoie pas 1.

Donc il faut traiter les deux cas séparément :

function saveOnlyIfSelected(form){   
if(form.service.length) {
var compteur = 0;
for(i = 0; i < form.service.length; i++){
if(form.service[i].checked)
compteur++;
if (1 <= compteur)
return true;
}
}
else {
if(form.service.checked)
return true;
}
return false;
}

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...