Javascript: methode et concaténation ???
jemsss
Messages postés
198
Statut
Membre
-
jemsss Messages postés 198 Statut Membre -
jemsss Messages postés 198 Statut Membre -
Bonjour,
je n'arrive pas à faire une manip toute bête. Dans la fonction ci-dessous, ma variable "valeur" reste une chaine de caractère. Elle ne veut pas prendre le valeur de mon bouton radio. Comment faire ?
Merci d'avance.
je n'arrive pas à faire une manip toute bête. Dans la fonction ci-dessous, ma variable "valeur" reste une chaine de caractère. Elle ne veut pas prendre le valeur de mon bouton radio. Comment faire ?
Merci d'avance.
<script language="javascript" type="text/javascript">
<!--
function calcul() {
var somme=0;
for(i=1;i<=4;i++){
var valeur= 'document.formulaire.question' + i + '.value';
if(Number(valeur)==1) somme++;
}
alert(somme);
}
-->
</script>
<form name="formulaire">
<input type="radio" value="1" name="question1" />oui
<input type="radio" value="0" name="question1" />non<br>
<input type="radio" value="0" name="question2" />oui
<input type="radio" value="1" name="question2" />non<br>
<input type="radio" value="0" name="question3" />oui
<input type="radio" value="1" name="question3" />non<br>
<input type="radio" value="1" name="question4" />oui
<input type="radio" value="0" name="question4" />non<br>
<input type="button" value="Calculer" onclick="calcul();" />
</form>
2 réponses
-
var valeur= eval('document.formulaire.question' + i + '.value');
répond-il à ton besoin ?
-
Bonjour et merci
C'est exactement ce qui me fallait.
Par contre j'ai maintenant un 2e problème : cette variable prend comme valeur : "undefined".
Pourtant "document.formulaire.question1.value" me semble être le seule moyen de récupérer la valeur du bouton radio sélectionné.-
-
-
-
Bien vu. On dirait qu'un ensemble de bouton radio n'accepte pas ".value".
Il fallait d'abord vérifier quel bouton radio est selectionné puis récupérer la ".value" de ce bouton.
function calcul() { var somme=0; for(i=1;i<=4;i++){ var select0= eval('document.formulaire.question'+i+'[0].checked'); var select1= eval('document.formulaire.question'+i+'[1].checked'); var valeur0= Number(eval('document.formulaire.question'+i+'[0].value')); var valeur1= Number(eval('document.formulaire.question'+i+'[1].value')); if(select0==true) somme=somme+valeur0; if(select1==true) somme=somme+valeur1; } } alert(somme); }
Merci
-