Souci calcul javascript (débutant)
Meth
-
Meth -
Meth -
Bonjour,
Pour m'amuser, j'essaie de coder un calculateur de prix de cigs en javascript... mais je avoue que je bloque, plusieurs questions, mais tout d'abord mon code :
<html>
<head>
<title>Calculateur du prix dépensé en cigarettes dans le temps</title>
<script type="text/JavaScript">
function resultat(){
var a = document.forms[0].nbreans.value;
var b = document.forms[0].nbrecigs.value;
var c = document.forms[0].jours.value;
document.forms[0].result.value = a*b*c;
var d = document.getElementById('result').value;
var e = document.forms[0].nbrecigarettespaquet.value;
var f = document.forms[0].prixpaquet.value;
document.forms[0].result2.value = d/e*f;}
</script>
</head>
<body>
<form>
<p>Je fume depuis <input type="text" name="nbreans" value="" size="4"> années, <br/>
à raison de <input type="text" name="nbrecigs" value="" size="4"> cigarettes par jour, <br/>
comme je le sais, il y a <input type="text" name="jours" value="365" size="4"> jours par an. <br/><br/>
A raison de <input type="text" name="nbrecigarettespaquet" value="20" size="4"> cigarettes par paquet<br/>
Pour un prix de <input type="text" name="prixpaquet" value="5" size="4"> euros par paquet<br/><br/><br/>
<input type="button" name="Envoi" value="Valider" onclick="resultat();"><input type="reset" value="Effacer"> <br/><br/>
J'ai donc fumé <input type="text" name="result" value="" size="5"> cigarettes depuis ma première cigarette.<br/><br/>
J'ai donc dépensé <input type="text" name="result2" value="" size="5"> euros en cigarettes !!!!<br/><br/>
</form>
</body>
</html>
Je bloque sur plusieurs points :
1 . J'aimerais récupérer ma valeur "result" (en fait la valeur de "j'ai donc fumé XXX cigarettes depuis..." et l'utiliser pour continuer mon script, ce que je pensais avoir fait avec "var d = document.getElementById('result').value;" qui me l'aurait récupérée "en d"
2 . ... pour pouvoir l'utiliser par la suite en la divisant par "e" à savoir "nbrecigarettespaquet"
3 . ... puis en multipliant le tout par "f", à savoir "prixpaquet" !
Mais ça ne fonctionne pas.... pourtant mon code me semble bon, même si c'est la première fois que je m'amuse à utiliser javascript !
Pouvez vous m'aider ?
D'avance merci !
Meth.
Pour m'amuser, j'essaie de coder un calculateur de prix de cigs en javascript... mais je avoue que je bloque, plusieurs questions, mais tout d'abord mon code :
<html>
<head>
<title>Calculateur du prix dépensé en cigarettes dans le temps</title>
<script type="text/JavaScript">
function resultat(){
var a = document.forms[0].nbreans.value;
var b = document.forms[0].nbrecigs.value;
var c = document.forms[0].jours.value;
document.forms[0].result.value = a*b*c;
var d = document.getElementById('result').value;
var e = document.forms[0].nbrecigarettespaquet.value;
var f = document.forms[0].prixpaquet.value;
document.forms[0].result2.value = d/e*f;}
</script>
</head>
<body>
<form>
<p>Je fume depuis <input type="text" name="nbreans" value="" size="4"> années, <br/>
à raison de <input type="text" name="nbrecigs" value="" size="4"> cigarettes par jour, <br/>
comme je le sais, il y a <input type="text" name="jours" value="365" size="4"> jours par an. <br/><br/>
A raison de <input type="text" name="nbrecigarettespaquet" value="20" size="4"> cigarettes par paquet<br/>
Pour un prix de <input type="text" name="prixpaquet" value="5" size="4"> euros par paquet<br/><br/><br/>
<input type="button" name="Envoi" value="Valider" onclick="resultat();"><input type="reset" value="Effacer"> <br/><br/>
J'ai donc fumé <input type="text" name="result" value="" size="5"> cigarettes depuis ma première cigarette.<br/><br/>
J'ai donc dépensé <input type="text" name="result2" value="" size="5"> euros en cigarettes !!!!<br/><br/>
</form>
</body>
</html>
Je bloque sur plusieurs points :
1 . J'aimerais récupérer ma valeur "result" (en fait la valeur de "j'ai donc fumé XXX cigarettes depuis..." et l'utiliser pour continuer mon script, ce que je pensais avoir fait avec "var d = document.getElementById('result').value;" qui me l'aurait récupérée "en d"
2 . ... pour pouvoir l'utiliser par la suite en la divisant par "e" à savoir "nbrecigarettespaquet"
3 . ... puis en multipliant le tout par "f", à savoir "prixpaquet" !
Mais ça ne fonctionne pas.... pourtant mon code me semble bon, même si c'est la première fois que je m'amuse à utiliser javascript !
Pouvez vous m'aider ?
D'avance merci !
Meth.
A voir également:
- Souci calcul javascript (débutant)
- Calcul moyenne excel - Guide
- Calcul km marche à pied gratuit - Télécharger - Sport
- Logiciel de programmation pour débutant - Guide
- Logiciel montage vidéo débutant - Guide
- Telecharger javascript - Télécharger - Langages
3 réponses
Bonjour,
Le soucis, c'est que tu utilises getElementById, alors que pour le champ result, tu n'as pas défini d'Id.
Donc, plusieurs solutions :
- Soit tu rajoutes id="result" à côté de son name="result"
- Soit tu utilises getElementsByName, mais attention il renvoie un tableau donc il faut le faire en deux étapes :
var tabResult = document.getElementsByName('result');
var d = tabResult[0].value;
- Soit tu utilises comme tu le faisais jusque là document.forms[0].result.value
- Soit tu fais simplement d = a*b*c;
Xavier
Le soucis, c'est que tu utilises getElementById, alors que pour le champ result, tu n'as pas défini d'Id.
Donc, plusieurs solutions :
- Soit tu rajoutes id="result" à côté de son name="result"
- Soit tu utilises getElementsByName, mais attention il renvoie un tableau donc il faut le faire en deux étapes :
var tabResult = document.getElementsByName('result');
var d = tabResult[0].value;
- Soit tu utilises comme tu le faisais jusque là document.forms[0].result.value
- Soit tu fais simplement d = a*b*c;
Xavier