[Javascript] Somme de var ..:: HELP ::..

Résolu/Fermé
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 - 25 oct. 2006 à 17:44
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 - 27 oct. 2006 à 10:10
Bonjour ou peut-être re-Bonjour pour certains !!

Voici mon script :
<SCRIPT language="javascript">
function changeListeDeroulante(totalCharge, chargeHH, chargeMM){ // tous les tests qui seront effectués lors de la validation du formulaire !
	var chargesSaisies = 0
	var chargeHH1 = (chargeHH.value)*6
	var chargeMM1 = (chargeMM.value)
	chargesSaisies = ((chargeHH1.value) + (chargeMM1.value))
	var Total = 0
	Total = (chargesSaisies.value) + (totalCharge.value)
	if ((Total.value)>600){
		alert("bah 1 !! Total "+Total+" chargesSaisies "+(chargesSaisies.value)+" totalCharge "+(totalCharge.value)+" chargeHH1 "+chargeHH1+" chargeMM1 "+chargeMM1);
	}
	else{
		alert("bah 2 !! Total "+Total+" chargesSaisies "+(chargesSaisies.value)+" totalCharge "+(totalCharge.value)+" chargeHH1 "+chargeHH1+" chargeMM1 "+chargeMM1);
	}
return false;
}
</script>

J'appelle ce script sur un onchange dans une liste déroulante ... pour l'instant j'ai volontairement mis un return false pour que, même si ça voulait marcher, je puisse le voir de mes propres yeux ... !!

Quand je change la valeur de ma liste déroulante j'obtiens actuellement le message d'alerte suivant :

bah 2 !!
Total undefined13680
chargesSaisies undefined
totalCharge 13680
chargeHH1 6
chargeMM1 00


Je pense donc que ça bugge au niveau de chargesSaisies quand j'essaye de faire la somme, mais je ne comprend pas du tout ce qui ne va pas !!

Merci d'avance pour votre aide ;-)
A voir également:

4 réponses

elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 oct. 2006 à 08:40
En fait je comprends que le problème est que un de mes "+" est interprétés comme une concaténation et non une somme, mais je ne vois pas où ...

J'ai maintenant essayé avec des parseInt un peu partout mais ça ne marche toujours pas !

Aidez moi s'il vous plait !!
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 oct. 2006 à 10:27
Lol, la conversation que je crée et où y a que moi qui poste ... Mon problème est enfin RESOLU et moi je suis HEUREUSE !! Je poste mon code pour ceux qui seront confronté à un problème de ce style ...
<SCRIPT language="javascript">
function changeListeDeroulante(totalCharge, chargeHH, chargeMM){ // tous les tests qui seront effectués lors de la validation du formulaire !
	var chargesSaisies = 0 ;
	var chargeHH1 = parseInt((chargeHH.value)*60) ;
	var chargeMM1 = parseInt(chargeMM.value) ;
	var chargesSaisies = chargeHH1+chargeMM1 ;
	var Total = 0 ;
	var chargesExistantes= parseInt(totalCharge.value) ;
	Total = chargesSaisies + chargesExistantes ;
	if ((Total.value)>600){
		alert("1 ==>\nVous ne pouvez pas travailler plus de 10h par jour !! Total "+Total+" chargesSaisies "+(chargesSaisies.value)+" totalCharge "+(totalCharge.value)+" chargeHH1 "+chargeHH1+" chargeMM1 "+chargeMM1);
	}
	else{
		alert("2 ==>\nVous ne pouvez pas travailler plus de 10h par jour !! Total "+Total+" chargesSaisies "+chargesSaisies+" totalCharge "+(totalCharge.value)+" chargeHH1 "+chargeHH1+" chargeMM1 "+chargeMM1);
	}
return false;
}
</script>
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
27 oct. 2006 à 09:24
Désolé de pas avoir été là plus tot pour te faire la conversation XP

En effet, prendre deux fois de suite la valeur ".value" tapait forcément dans quelque chose qu'il ne connaissait pas :)
Comme quoi des fois... travailler plus de 10h par jours ca sert ;)
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
27 oct. 2006 à 10:10
Merci pour cette explication ...

Je comprends mieux mes erreurs !! Souvent je m'arrête au fait que ça marche, sans réfléchir au pourquoi du comment ... et puis la fois où ça marche pas, je ne comprends plus pourquoi, vu que pour moi ça tenait du miracle avant !!

Bref, trop de travail tue le travail ... ce soir c'est le weekend et je pense que PHP, MySQL et Javascript ne feront partie que de mes pires cauchemars !!

... après réflexion, je pense que je ne vais pas prendre le risque de dormir ;-)
0