Multiplier par 2 valeur input

mikl86 -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,

J'ai besojn de multiplier par 2 une valeur lors d'un clic sur checkbox
J'ai donc fais ceci :
<input type="checkbox" name="ar" onclick="javascript:document.getElementById('distance_parcourue_input').value=document.getElementById('distance_parcourue_input').value*2;" /></p>


Le probleme c'est que la multiplication se fait à l'infini à chaque coche de la checkbox.
Comment puis je faire en sorte que la checkbox multiplie une seule fois la valeur et que si celle-ci est cochée ?

Merci d'avance pour vos lumières

3 réponses

  1. Utilisateur anonyme
     
    Salut

    As-tu essayé avec un script à part ? Hors de l'input, dans un <script> ?
    0
  2. Melooo Messages postés 1476 Statut Membre 84
     
    Salut,
    Peut être que tu pourrais mettre une variable de contrôle.
    Si ta checbox est coché alors cette variable prend 1 si elle n'est pas coché alors la variable prend 0...
    Et tu test cette variable à chaque fois que ta checkbox est coché.
    0
  3. Alain_42 Messages postés 5413 Statut Membre 904
     
    Salut
    avec une variable globale javascript qui mémorise les clicks
    <script type="text/javascript">
    compteur=0; // initialisation d'un compteur qui va memeoriser le nbr de click
    function multiplication(){
    	if(document.getElementById('ar').checked==true && compteur == 0 ){
    		document.getElementById('distance_parcourue_input').value=document.getElementById('distance_parcourue_input').value*2;"
    		compteur ++; //une fois la multiplication faite on incremente le compteur ce qui bloque la suivante
    	}
    }
    
    </script>
    
    <input type="checkbox" name="ar" id="ar" onclick="multiplication();" /></p>
    0