Récupérer les valeurs de menus déroulants dans un champ (Total)

Résolu/Fermé
Cyberium77 Messages postés 560 Date d'inscription mercredi 11 septembre 2013 Statut Membre Dernière intervention 8 août 2018 - 17 mars 2016 à 14:45
Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 - 19 mars 2016 à 21:12
Bonjour,

j'aurai souhaité obtenir le total de plusieurs champs à choix multiples.

Voici un exemple :

Premier Menu déroulant = [Liste de choix] Casquette à 12,00 €, Casquette à 15,00 €

Seconde Menu déroulant = [Liste de choix] Chemise à 10,00 €, Chemise à 20,00 €

Champ [Total] = (Afficherait le montant total par rapport aux choix sélectionnés).

Y aurait-il une âme charitable pour me faire un tout petit bout de code (HTML5), afin que je puisse avoir une première base ?
Que par la suite, je peaufinerais afin de me faire la main.

D'avance merci :)

Très belle journée à tous.

3 réponses

Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 1 320
17 mars 2016 à 18:26
Salut,

Tu fais le "formulaire" en HTML avec 2 combobox, puis tu fais le calcul en Javascript.

Tu sais faire le HTML?
0
Cyberium77 Messages postés 560 Date d'inscription mercredi 11 septembre 2013 Statut Membre Dernière intervention 8 août 2018 65
Modifié par Cyberium77 le 17/03/2016 à 19:43
Salut,
oui, les formulaires aucun souci.
J'ai quelques notions en HTML, mais c'est au niveau du Javascript que ça coince...

EDIT : C'est surtout pour cela que je cherchais avant tout un code d'exemple, afin de comprendre le fonctionnement.

Merci
0
Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 1 320
17 mars 2016 à 20:25
OK.

Copie colle ton code HTML.

A+
0
Cyberium77 Messages postés 560 Date d'inscription mercredi 11 septembre 2013 Statut Membre Dernière intervention 8 août 2018 65
Modifié par Cyberium77 le 17/03/2016 à 21:44
Quelque chose du genre...
Ici, je ne l'ai pas fait en choix multiples, mais en cases à cocher.

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Test</title>
</head>

<body>

<form method="post" action="ton_action">
   <p>Faites votre Choix :<br>
       <input type="checkbox" name="casq_10" />Casquette à 10,00 €<br>
       <input type="checkbox" name="casq_20" />Casquette à 20,00 €<br>
       <br>
       <input type="checkbox" name="chem_15" />Chemise à 15,00 €<br>
       <input type="checkbox" name="chem_25" />Chemise à 25,00 €<br>
       <br>
       Total de vos Choix : 
   </p>
</form>

</body>
</html>
0
Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 1 320
18 mars 2016 à 23:25
Au fait, tu veux le faire en Javascript ou en PHP?

Alors je n'ai pas tout fais, mais une petite base pour voir si tu comprends le principe déjà et si tu veux tester avant de l'avoir tout cuit :-P

En JS, la base est la:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Test</title>
<script>
function calcul()
{
// Ici tester si la valeur est cochée et si elle l'est récupérer la valeur et l'additionner. Enfin, l'afficher dans le input.
}
</script>
</head>

<body>

<form method="post" action="ton_action">
<p>Faites votre Choix :<br>
<input type="checkbox" id="un" name="casq_10" value="10" onclick="calcul()" />Casquette à 10,00 €<br>
<input type="checkbox" id="deux" name="casq_20" value="20" onclick="calcul()"/>Casquette à 20,00 €<br>
<br>
<input type="checkbox" id="trois" name="chem_15" value="15" onclick="calcul()"/>Chemise à 15,00 €<br>
<input type="checkbox" id="quatre" name="chem_25" value="25" onclick="calcul()"/>Chemise à 25,00 €<br>
<br>
Total de vos Choix : <input type="text" name="total" readonly />
</p>
</form>

</body>
</html>

0
Cyberium77 Messages postés 560 Date d'inscription mercredi 11 septembre 2013 Statut Membre Dernière intervention 8 août 2018 65
19 mars 2016 à 00:01
En javascript,

par contre, j'ai beau cocher dans ton exemple, rien ne s'additionne. :/

merci quand même :)
0
Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 1 320
Modifié par Regis59 le 19/03/2016 à 00:27
Je pensais que t'allais chercher un peu lol

Essai ce code:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Test</title>
<script>
function calcul()
{
var somme = 0;
var checks = document.forms["Form"].getElementsByTagName("input");
for (var i = 0, iMax = checks.length; i < iMax; ++i) {
if ((checks[i].type == "checkbox") && checks[i].checked) {
somme += parseInt(checks[i].value);
}
}
document.getElementsByName("total")[0].value = somme;
}
</script>
</head>

<body>

<form method="post" action="ton_action" name="Form">
<p>Faites votre Choix :<br>
<input type="checkbox" id="un" name="casq_10" value="10" onclick="calcul()" />Casquette à 10,00 €<br>
<input type="checkbox" id="deux" name="casq_20" value="20" onclick="calcul()"/>Casquette à 20,00 €<br>
<br>
<input type="checkbox" id="trois" name="chem_15" value="15" onclick="calcul()"/>Chemise à 15,00 €<br>
<input type="checkbox" id="quatre" name="chem_25" value="25" onclick="calcul()"/>Chemise à 25,00 €<br>
<br>
Total de vos Choix : <input type="text" id="total" name="total" readonly />
</p>
</form>

</body>
</html>


"Impossible is nothing"
0
Cyberium77 Messages postés 560 Date d'inscription mercredi 11 septembre 2013 Statut Membre Dernière intervention 8 août 2018 65
19 mars 2016 à 15:42
Yeah !
C'est exactement ce que je recherchai comme base.
Un tout grand merci ;)
0
Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 1 320
19 mars 2016 à 21:12
Cool :-)

++
0