La communauté ALL HTML c'est 58827 membres à ce jour dont 3 inscrits aujourd'hui et 32 depuis une semaine.

  • imprimer
  • aide

Forum de discussions « XHTML - HTML - CSS »

Retrouvez les publications relatives à ces discussions dans nos rubriques CSS, HTML, XHTML.

Récupérér les valeurs d'un menu déroulant dans un champ texte

liste des forums liste des discussions Participer à la discussion

Photo de chnizer Message publié le lundi 25 août 2008 à 16 h 02 par chnizer.
Bonjour,

Dans un premier menu déroulant je souhaite sélectionner un article dont le paramètre "value" contient son prix. Dans un 2eme menu déroulant je souhaite sélectionner le nombre d'articles achetés. Grace à une fonction "calculer()" je souhaite récupérer dynamiquement la somme exacte dans un champ texte "somme".

Et à la fin, avoir le total des achats dans un champ texte "total".

==> [URL="http://www.tunaction.org/Nizar/test2_aid.html"]Voici à quoi doit ressembler ma page[/URL]

==> Voici le code source :

[CODE] <html> <head> </head> <body> <script> function calculer(){ var indice_selectionne=document.liste.liste_cadeaux.selectedIndex; var indice_selectionne2=document.liste.nombre_cadeaux.selectedIndex; var chango = document.liste.liste_cadeaux.options[indice_selectionne].value; switch (chango){ case "90":document.liste.somme.value=90*3;break; case "20":document.liste.somme.value=20*"indice_selectionne2";break; case "7":document.liste.somme.value=7*indice_selectionne2;break; case "140":document.liste.somme.value=140*indice_selectionne2;break; case "200":document.liste.somme.value=200*indice_selectionne2;break; case "200":document.liste.somme.value=200*indice_selectionne2;break; case "30":document.liste.somme.value=30*indice_selectionne2;break; } } </script> <form NAME="liste"> <select name="liste_cadeaux" onchange="calculer()"> <option VALUE="0">- Faites votre choix -</option> <option VALUE="90"> Ordtinateurs P.IV </option> <option VALUE="20"> Livres </option> <option VALUE="7"> Jeux éducatifs </option> <option VALUE="140"> Cours particuliers </option> <option VALUE="200"> Table de babyfoot </option> <option VALUE="200"> Table de ping-pong </option> <option VALUE="30"> Jeux pour handicapés </option> </select> <select NAME="nombre_cadeaux" size="1"> <option VALUE="1">1</option> <option VALUE="2">2</option> <option VALUE="3">3</option> <option VALUE="4">4</option> </select> Somme = <input type="text" name="somme" size="10" value="0" readonly="readonly"> </form> <form NAME="liste_cadeaux1"> <select NAME="liste_cadeaux1" size="1"> <option VALUE="">- Faites votre choix -</option> <option VALUE="90"> Ordtinateurs P.IV </option> <option VALUE="20"> Livres </option> <option VALUE="7"> Jeux éducatifs </option> <option VALUE="140"> Cours particuliers </option> <option VALUE="200"> Table de babyfoot </option> <option VALUE="200"> Table de ping-pong </option> <option VALUE="30"> Jeux pour handicapés </option> </select> <select NAME="nombre_cadeaux1" size="1"> <option VALUE="1">1</option> <option VALUE="2">2</option> <option VALUE="3">3</option> <option VALUE="4">4</option> </select> Somme = <input type="text" name="somme1" value="0" readonly="readonly" SIZE=10/> </form> Total = <input type="text" name="total" value="0" readonly="readonly" SIZE=10/> € <br> </body> </html>[/CODE]

Merci d'avance de m'aider à faire marcher et éventuellement corriger le premier script "calculer()" et faire remplir dynamiquement aussi le champ total.
Photo de sprayart Message publié le mardi 26 août 2008 à 20 h 57 par sprayart.
Bonjour,
voici un bout de code qui devrait t'aider, seul la première ligne article-quantite est active A+
--------------------------------------------------------------------------------------------------
<html>
<head>
<script language="javascript">
function calculer1(formulaire,prix,listenombre,resultat)
{
formulaire.elements[resultat].value=formulaire.elements[listenombre].options[formulaire.elements[listenombre].selectedIndex].value*prix;
formulaire.elements['total'].value=parseInt(formulaire.elements['somme'].value) +
parseInt(formulaire.elements['somme1'].value) + parseInt(formulaire.elements['somme2'].value);
}
function calculer2(formulaire,quantite,listechoix,resultat)
{
formulaire.elements[resultat].value=formulaire.elements[listechoix].options[formulaire.elements[listechoix].selectedIndex].value*quantite;
formulaire.elements['total'].value=parseInt(formulaire.elements['somme'].value) +
parseInt(formulaire.elements['somme1'].value) + parseInt(formulaire.elements['somme2'].value);
}
</script>
</head>
<body>
<form NAME="formul">
<select name="liste_cadeaux" onChange="calculer1(this.form,this.value,'nombre_cadeaux','somme')">
<option VALUE="0">- Faites votre choix -</option>
<option VALUE="90"> Ordtinateurs P.IV </option>
<option VALUE="20"> Livres </option>
<option VALUE="7"> Jeux éducatifs </option>
<option VALUE="140"> Cours particuliers </option>
<option VALUE="200"> Table de babyfoot </option>
<option VALUE="200"> Table de ping-pong </option>
<option VALUE="30"> Jeux pour handicapés </option>
</select>
<select NAME="nombre_cadeaux" size="1" onChange="calculer2(this.form,this.value,'liste_cadeaux','somme')">
<option VALUE="0">0</option>
<option VALUE="1">1</option>
<option VALUE="2">2</option>
<option VALUE="3">3</option>
<option VALUE="4">4</option>
</select>
Somme = <input type="text" name="somme" size="10" value="0" readonly="readonly"><br>
<select NAME="liste_cadeaux1" size="1">
<option VALUE="">- Faites votre choix -</option>
<option VALUE="90"> Ordtinateurs P.IV </option>
<option VALUE="20"> Livres </option>
<option VALUE="7"> Jeux éducatifs </option>
<option VALUE="140"> Cours particuliers </option>
<option VALUE="200"> Table de babyfoot </option>
<option VALUE="200"> Table de ping-pong </option>
<option VALUE="30"> Jeux pour handicapés </option>
</select>
<select NAME="nombre_cadeaux1" size="1">
<option VALUE="1">1</option>
<option VALUE="2">2</option>
<option VALUE="3">3</option>
<option VALUE="4">4</option>
</select>
Somme = <input type="text" name="somme1" value="0" readonly="readonly" SIZE="10"><br>
<select NAME="liste_cadeaux2" size="1">
<option VALUE="">- Faites votre choix -</option>
<option VALUE="90"> Ordtinateurs P.IV </option>
<option VALUE="20"> Livres </option>
<option VALUE="7"> Jeux éducatifs </option>
<option VALUE="140"> Cours particuliers </option>
<option VALUE="200"> Table de babyfoot </option>
<option VALUE="200"> Table de ping-pong </option>
<option VALUE="30"> Jeux pour handicapés </option>
</select>
<select NAME="nombre_cadeaux2" size="1">
<option VALUE="1">1</option>
<option VALUE="2">2</option>
<option VALUE="3">3</option>
<option VALUE="4">4</option>
</select>
Somme = <input type="text" name="somme2" value="0" readonly="readonly" SIZE="10"><br>
Total = <input type="text" name="total" value="0" readonly="readonly" SIZE="10"> €
<br>
</form>
</body>
</html>

liste des forums liste des discussions Participer à la discussion

Vous devez obligatoirement vous identifier en tant que membre pour participer à cette discussion.

ACCÉS COMMUNAUTÉ

Rejoignez ALL HTML

Publiez vos articles, actualités, communiqués ... Donnez votre avis, partagez votre réseau, rencontrez d'autres membres et participez à la vie de la communauté.

Les 5 dernières discussions