Addition de valeurs en JAVASCRIPT Formulaire
PPCPRO
-
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
Je suis en train de développer un formulaire de commande avec échéancier mensuel, quantite, forfait...
Mon probleme est que je n'arrive pas à ADDITIONNER la valeur des frais de port à mon résultat, j'obtiens : [object HTMLInputElement]
Pouvez vous me venir en aide
Cordialement
Voici mon script :
<html>
<head>
<script type="text/javascript">
//------------------
function Fct_Somme(){
//-- Recup Objet FORM grace a son NAME
var O_Form = document.SOMME;
//-- Recup valeur 1 avec parseFloat()
var Val_1 = parseFloat( O_Form.QUANTITE.value);
//-- Recup valeur 2 avec parseFloat()
var Val_2 = parseFloat( O_Form.LOCATION.value);
//-- Recup valeur 3 avec parseFloat()
var Val_3 = parseFloat( O_Form.GEOLOC.value);
//-- Recup valeur 3 avec parseFloat()
var Val_4 = parseFloat( O_Form.RESULTAT1.value);
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT1.value = ( (Val_2*Val_1) ) + prix_total1;
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT2.value = ( Val_1*250);
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT3.value = ( ( 75+49) *Val_1) + prix_total1;
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT4.value = ( 75 *Val_1);
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT5.value = ( 75 *Val_1);
//-- mets la valeur dans l'INPUT resultat
O_Form.FRAISADMIN.value = ( 9 *Val_1);
//-- mets la valeur dans l'INPUT resultat
var port = 0;
for(i=1;i<10;i++){
val=Number(document.getElementById("val"+i).value);
if (Val_1 <= 5)
prix = 15;
else
if (Val_1 <= 10)
prix = 20;
else
if (Val_1 <= 50)
prix = 40;
else
if (Val_1 <= 1000)
prix = 0;
prixTotal= prix;
port = port + prixTotal;
document.getElementById("prix_total"+i).value=prixTotal;
//-- Recup valeur 3 avec parseFloat()
var Val_4 = parseFloat( O_Form.prix_total1.value);
}
}
</script>
</head>
<body>
<form id="SOMME" name="SOMME">
<label>Formule de location choisie :
<select name = "LOCATION" onchange="calcul(this)">
<option value="274">3 mois (3x75 €HT)</option>
</select>
</label>
<br>
<label>Forfait de géolocalisation :
<select name = "GEOLOC" onchange="calcul(this)">
<option value="49">SPOT90 (+49 €HT)</option>
</select>
</label><br>
Quantité :
<input name = "QUANTITE" size="8" type = "text">
<input type = "button" onclick = "Fct_Somme();" value = "CALCULER">
<br>
Montant de la caution :
<input name = "RESULTAT2" readonly size="8" type = "text">€HT<br>
<br>
<br>
A la commande (J) :
<input name = "RESULTAT3" readonly size="8" type = "text">€HT<br>
                      J+30 :
<input name = "RESULTAT4" readonly size="8" type = "text">€HT<br>
                      J+60 :
<input name = "RESULTAT5" readonly size="8" type = "text">€HT<br>
Frais administratifs d'ouverture de compte et de préparation de la commandes (inclus dans le prix) :
<input name = "FRAISADMIN" readonly size="8" type = "text">€HT<br>
<br>
Frais de port (en sus) :
<input type="hidden" size="8" class="val" id="val1" value="Val_1" onchange="calcul(this)" />
<input type="hidden" size="8" disabled="disabled" value="0" id="prix1" />
<input name="TEST" size="8" id="prix_total1" onchange="calcul(this)"/>
<br>
<label>Prix total de la solution : <input name = "RESULTAT1" readonly size="8" type = "text">€HT
</form>
</body>
</html>
Je suis en train de développer un formulaire de commande avec échéancier mensuel, quantite, forfait...
Mon probleme est que je n'arrive pas à ADDITIONNER la valeur des frais de port à mon résultat, j'obtiens : [object HTMLInputElement]
Pouvez vous me venir en aide
Cordialement
Voici mon script :
<html>
<head>
<script type="text/javascript">
//------------------
function Fct_Somme(){
//-- Recup Objet FORM grace a son NAME
var O_Form = document.SOMME;
//-- Recup valeur 1 avec parseFloat()
var Val_1 = parseFloat( O_Form.QUANTITE.value);
//-- Recup valeur 2 avec parseFloat()
var Val_2 = parseFloat( O_Form.LOCATION.value);
//-- Recup valeur 3 avec parseFloat()
var Val_3 = parseFloat( O_Form.GEOLOC.value);
//-- Recup valeur 3 avec parseFloat()
var Val_4 = parseFloat( O_Form.RESULTAT1.value);
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT1.value = ( (Val_2*Val_1) ) + prix_total1;
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT2.value = ( Val_1*250);
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT3.value = ( ( 75+49) *Val_1) + prix_total1;
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT4.value = ( 75 *Val_1);
//-- mets la valeur dans l'INPUT resultat
O_Form.RESULTAT5.value = ( 75 *Val_1);
//-- mets la valeur dans l'INPUT resultat
O_Form.FRAISADMIN.value = ( 9 *Val_1);
//-- mets la valeur dans l'INPUT resultat
var port = 0;
for(i=1;i<10;i++){
val=Number(document.getElementById("val"+i).value);
if (Val_1 <= 5)
prix = 15;
else
if (Val_1 <= 10)
prix = 20;
else
if (Val_1 <= 50)
prix = 40;
else
if (Val_1 <= 1000)
prix = 0;
prixTotal= prix;
port = port + prixTotal;
document.getElementById("prix_total"+i).value=prixTotal;
//-- Recup valeur 3 avec parseFloat()
var Val_4 = parseFloat( O_Form.prix_total1.value);
}
}
</script>
</head>
<body>
<form id="SOMME" name="SOMME">
<label>Formule de location choisie :
<select name = "LOCATION" onchange="calcul(this)">
<option value="274">3 mois (3x75 €HT)</option>
</select>
</label>
<br>
<label>Forfait de géolocalisation :
<select name = "GEOLOC" onchange="calcul(this)">
<option value="49">SPOT90 (+49 €HT)</option>
</select>
</label><br>
Quantité :
<input name = "QUANTITE" size="8" type = "text">
<input type = "button" onclick = "Fct_Somme();" value = "CALCULER">
<br>
Montant de la caution :
<input name = "RESULTAT2" readonly size="8" type = "text">€HT<br>
<br>
<br>
A la commande (J) :
<input name = "RESULTAT3" readonly size="8" type = "text">€HT<br>
                      J+30 :
<input name = "RESULTAT4" readonly size="8" type = "text">€HT<br>
                      J+60 :
<input name = "RESULTAT5" readonly size="8" type = "text">€HT<br>
Frais administratifs d'ouverture de compte et de préparation de la commandes (inclus dans le prix) :
<input name = "FRAISADMIN" readonly size="8" type = "text">€HT<br>
<br>
Frais de port (en sus) :
<input type="hidden" size="8" class="val" id="val1" value="Val_1" onchange="calcul(this)" />
<input type="hidden" size="8" disabled="disabled" value="0" id="prix1" />
<input name="TEST" size="8" id="prix_total1" onchange="calcul(this)"/>
<br>
<label>Prix total de la solution : <input name = "RESULTAT1" readonly size="8" type = "text">€HT
</form>
</body>
</html>
A voir également:
- Addition de valeurs en JAVASCRIPT Formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Addition excel - Guide
- Formulaire de reclamation instagram - Guide
- Formulaire de contact le bon coin introuvable ✓ - Forum Réseaux sociaux
1 réponse
O_Form.RESULTAT1.value = ( (Val_2*Val_1) ) + prix_total1;
tu ajoutes une variable prix_total1 qui n'existe pas
ensuite dans cette partie il y a un gros pb de principe
val=Number(document.getElementById("val"+i).value); //a quoi sert cette ligne puisque tu ne l'utilises pas ensuite
// exemple Val_1= 3
if (Val_1 <= 5) //satisfait cette condition donc prix=15
prix = 15;
else
if (Val_1 <= 10) //mais satisfait aussi cette condition donc prix=20
prix = 20;
else
if (Val_1 <= 50) //mais satisfait aussi cette condition donc prix=40
prix = 40;
else
if (Val_1 <= 1000) //mais satisfait aussi cette condition donc prix=0
prix = 0;
tu ajoutes une variable prix_total1 qui n'existe pas
ensuite dans cette partie il y a un gros pb de principe
val=Number(document.getElementById("val"+i).value); //a quoi sert cette ligne puisque tu ne l'utilises pas ensuite
// exemple Val_1= 3
if (Val_1 <= 5) //satisfait cette condition donc prix=15
prix = 15;
else
if (Val_1 <= 10) //mais satisfait aussi cette condition donc prix=20
prix = 20;
else
if (Val_1 <= 50) //mais satisfait aussi cette condition donc prix=40
prix = 40;
else
if (Val_1 <= 1000) //mais satisfait aussi cette condition donc prix=0
prix = 0;