Addition dans une fonction

[Résolu]
Signaler
Messages postés
186
Date d'inscription
vendredi 18 novembre 2005
Statut
Membre
Dernière intervention
19 décembre 2009
-
Messages postés
186
Date d'inscription
vendredi 18 novembre 2005
Statut
Membre
Dernière intervention
19 décembre 2009
-
Bonjour,

Bon la je tourne en rond....

J'appel ma fonction sur un input (chekbox)

la fonction:

function ptjf(this_,nb) {
if (document.forms["calandrier"].ptj.value = "")
    document.forms["calandrier"].ptj.value = 0;
   
if (this_.value == "on")
    document.forms["calandrier"].ptj.value = parseInt(document.forms["calandrier"].ptj.value)+parseInt(nb);
if (this_.value == "off")
    document.forms["calandrier"].ptj.value = parseInt(document.forms["calandrier"].ptj.value)-parseInt(nb);
}

Résultat affiché: NaN

Donc en gros lorsque que je coche la checkbox j'aujoute (nb) et lorsque je la décoche je soustrais (nb). J'envois ma fonction sur onMouseUp.

Quelqu'un a une idée de ce qui ne marche pas?

Az

3 réponses

Messages postés
186
Date d'inscription
vendredi 18 novembre 2005
Statut
Membre
Dernière intervention
19 décembre 2009
1
Bon bah voila... Le ridicule ne tueant pas....

Quand on fait un test sur une checkbox, il faut tester "checked" pas value

Donc au final j'appelle ma fonction sur onclick

et ca donne ca:

function ptjf(this_,nb) {
if (document.forms["calandrier"].ptj.value == "")
    document.forms["calandrier"].ptj.value = 0;
   
if (this_.checked)
    document.forms["calandrier"].ptj.value = parseInt(document.forms["calandrier"].ptj.value)+Number(nb);
else
    document.forms["calandrier"].ptj.value = parseInt(document.forms["calandrier"].ptj.value)-Number(nb);
}

Az
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
Bonjour,

    avant tout, essayer :

            if (document.forms["calandrier"].ptj.value == "")

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
186
Date d'inscription
vendredi 18 novembre 2005
Statut
Membre
Dernière intervention
19 décembre 2009
1
 Oui je viens de m'en rendre compte...

j'ai résolus une grande partie de mon problème, tous seul comme un grand^^...

function ptjf(this_,nb) {
if (document.forms["calandrier"].ptj.value == "")
    document.forms["calandrier"].ptj.value = 0;
   
if (this_.value == "on")
    document.forms["calandrier"].ptj.value = parseInt(document.forms["calandrier"].ptj.value)+Number(nb);
if (this_.value == "off")
    document.forms["calandrier"].ptj.value = parseInt(document.forms["calandrier"].ptj.value)-Number(nb);
   
    document.forms["calandrier"].ptj.value = this_.value
}

J'ai rajouté cette ligne de code a la fin de ma fonction pour verifier l'état de ma checkbox et verifier les valeur que je récupere....

    document.forms["calandrier"].ptj.value = this_.value

Probleme elle reste a ON en prémanence

Aez