begin process at 2012 05 29 16:47:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Autre

 > 

problème de formulaire de calcul en ligne


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème de formulaire de calcul en ligne

mardi 13 novembre 2007 à 19:34:32 | problème de formulaire de calcul en ligne

adtconsult

Bonjour,
J'ai une page web ou des données sont entrées par l'utilisateur en ligne

Qui ressemble à ceci :


-------------------------------------------------------
<SCRIPT type=text/javascript>
function calcule_prix()
{

ilargeurbat = document.getElementById("ilargeurbat").value;
ilongueurbat = document.getElementById("ilongueurbat").value;
ihauteurbat = document.getElementById("ihauteurbat").value;


document.getElementById("prix").value = ((ilargeurbat) * (ilongueurbat) * (ihauteurbat))-(ihauteurbat);
}
<table width="800" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC">

<tr>

<td colspan="2" valign="top">
<div align="left"><font face="Arial, Helvetica, sans-serif"><a name="dimension"></a><font size="4"><b>Dimensions</b></font></font>
</div></td>
</tr>

<tr valign="top">
<td height="1" colspan="2" class="separtor"><img src="spacer.gif" width="1" height="3"></td>
</tr>
<tr valign="top">
<td class="etiquette_head">&nbsp;</td>
<td class="etiquette_head">&nbsp;</td>
</tr>
<tr valign="top">

<td width="13%" class="etiquette_head">

<div align="left">Largeur </div></td>
<td width="87%" class="etiquette_head">

<div align="left"><font face="Arial, Helvetica, sans-serif">
<SELECT id=ilargeurbat onchange=javascript:calcule_prix(); name="ilargeurbat_">
<option value="0">Imp. / Mét.</option>
<option value="24">24' ---- 07,32m</option>
<option value="30">30' ---- 09,14m</option>
<option value="36">36' ---- 10,97m</option>
<option value="39">39' ---- 11,89m</option>
<option value="48">48' ---- 14,63m</option>
<option value="60">60' ---- 18,29m</option>
<option value="72">72' ---- 21,95m</option>
<option value="78">78' ---- 23,77m</option>
<option value="90">90' ---- 27,43m</option>
<option value="99">99' ---- 30,17m</option>
</select>
</font><font face="Arial, Helvetica, sans-serif">


</font></div></td>
</tr>
<tr valign="top">


<td class="etiquette_head">

<div align="left">Longueur</div></td>
<td class="etiquette_head"><div align="left"><font face="Arial, Helvetica, sans-serif">
<SELECT id=ilongueurbat onchange=javascript:calcule_prix(); name="ilongueurbat_">
<option value="N.D.">Imp. / Mét.</option>
<option value="12">12' ----03,66m</option>
<option value="24">24' ----07,32m</option>
<option value="36">36' ----10,97m</option>
<option value="48">48' ----14,63m</option>
<option value="60">60' ----18,29m</option>
<option value="72">72' ----21,95m</option>
<option value="84">84' ----25,60m</option>
<option value="96">96' ----29,26m</option>
<option value="108">108'---32,92m</option>
<option value="120">120'---36,92m</option>
<option value="132">132'---40,24m</option>
<option value="144">144'---43,89m</option>
<option value="156">156'---47,55m</option>
<option value="168">168'---51,21m</option>
<option value="180">180'---54,85m</option>
<option value="192">192'---58,52m</option>
<option value="204">204'---62,18m</option>
<option value="Autres dimensions">Autres dimensions</option>
</select>
</font></div></td>
</tr>
<tr valign="top">
<td class="etiquette_head">Hauteur</td>
<td class="etiquette_head"><font face="Arial, Helvetica, sans-serif">
<SELECT id=ihauteurbat onchange=javascript:calcule_prix(); name="ihauteurbat_">
<option value="N.D.">Imp. / Mét.</option>
<option value="8">08' ----2,44m</option>
<option value="10">10' ----3,05m</option>
<option value="12">12' ----3,66m</option>
<option value="14">14' ----4,28m</option>
<option value="16">16' ----4,88m</option>
<option value="18">18' ----5,49m</option>
<option value="20">20' ----6,10m</option>
<option value="22">22' ----6,71m</option>
<option value="24">24' ----7,32m</option>
</select>
</font></td>
</tr>
</table>

<table width="800" border="0" align="center" cellpadding="0" cellspacing="0">
<tr valign="bottom">
<td class="separtor"><img src="spacer.gif" width="1" height="1"></td>
</tr>
</table>
<div align="center">
<table width="800" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td class="etiquette_head"><div align="center"><b>
<input type="submit" name="Submit" value="Soumettre"><INPUT onclick=javascript:calcule_prix();><input type="reset" value="Supprimer" name="reset">
</b></div></td>
</tr>
</table>



</div>
<div align="left">

<center>

Prix : <INPUT id=prix size=10 value="0,00"
name=prix>



J'aimerais que , une fois que la valeur prix a été calculée, qu'elle aille trouver dans par exemple 5 champs cachés sur le formulaire, celui qui a la même valeur que le prix calculé et qu'il l'affiche dans la page dans un champ nommé « prix 2 » par exemple.

En bref, je veux placer 5 champs cachés dans cette page, et je veux qu'une fois que la fonction javascript ait calculé le prix, qu'il y ait une autre fonction qui prenne la valeur de ce prix, qu'elle recherche parmi les 5 champs cachés celui qui a la même valeur et qu'il affiche dans un champ « prix 2 » non caché le résultat de cette valeur (une option reliée au prix).

merci de votre aide précieuse
mercredi 14 novembre 2007 à 19:37:05 | Re : problème de formulaire de calcul en ligne

PetoleTeam

Membre Club
Bonjour,
Je ne suis pas sur de tout avoir compris mais à la lecture de ta source je doute que la fonction calcul_prix fonctionne.
Je te propose pour analyse celle ci
//---------------------
function calcule_prix(){
var O_Select;

O_Select = document.getElementById("ilargeurbat");
var iLarg = parseFloat(O_Select.options[O_Select.selectedIndex].value);
//ilargeurbat = document.getElementById("ilargeurbat").value;

O_Select = document.getElementById("ilongueurbat");
var iLong = parseFloat(O_Select.options[O_Select.selectedIndex].value);
//ilongueurbat = document.getElementById("ilongueurbat").value;


O_Select = document.getElementById("ihauteurbat");
var iHaut = parseFloat(O_Select.options[O_Select.selectedIndex].value);
//ihauteurbat = document.getElementById("ihauteurbat").value;


var iPrix =((iLarg) * (iLong) * (iHaut))-(iHaut);
document.getElementById("prix").value = iPrix.toFixed(2); // formatte 2 chiffres après la virgule
//document.getElementById("prix").value = ((ilargeurbat) * (ilongueurbat) * (ihauteurbat)) - (ihauteurbat);

}
pour le reste ...

;0)
jeudi 15 novembre 2007 à 17:52:39 | Re : problème de formulaire de calcul en ligne

adtconsult

en fait, l'ordi calcul le prix via le script. Ensuite, une fois le calcul du prix effectué, l'ordi doit aller chercher parmi 5 champs cachés, celui qui est égal au prix calculé. Une fois le champ caché trouvé, l'ordi doit prendre la valeur du champ caché trouvé et l'afficher à l'écran.


les 5 champs cachés ont les valeurs suivantes:

champ 1--- Nom: valeur_a valeur: 5000
champ 2--- Nom: valeur_b valeur: 6000
champ 3--- Nom: valeur_c valeur: 7000
champ 4--- Nom: valeur_d valeur: 8000
champ 5--- Nom: valeur_e valeur: 9000


je ne suis pas encore assez ferré en javascript pour réaliser ce bout de scipt.

merci !
-Fred
jeudi 15 novembre 2007 à 17:58:22 | Re : problème de formulaire de calcul en ligne

adtconsult

Est-ce qu'un champ caché peut avoir pour nom une valeur numérique?  exemple:  123456 .  Si oui, je nommerais chaque champ caché par un prix.  Ainsi le but serait de trouver le prix calculé par le script parmi les noms des champs cachés et ensuite une fois le prix trouvé qui sont en fait les noms des champs cachés, aller chercher la valeur et l'afficher.
jeudi 15 novembre 2007 à 18:35:28 | Re : problème de formulaire de calcul en ligne

PetoleTeam

Membre Club
Bonjour,
Est-ce qu'un champ caché peut avoir pour nom une valeur numérique?
A priori pas de problème bien que pas très explicite.

Dans ce cas il te suffit de récuper la somme, de la convertir en string, de tester si l'objet correspondant existe et si oui récupérer sa value.
Il te faut donc mettre un(e) ID à tes champs cachés pour pouvoir savoir si il existe grace à

var O_Ref = "" + parseInt( Prix);
var Obj = document.getElementById( O_Ref);
if( Obj)
  var Valeur = Obj.value;

Un truc dans ce goût la...
;0)
vendredi 16 novembre 2007 à 19:09:06 | Re : problème de formulaire de calcul en ligne

adtconsult

est-ce que je pourrais avoir un exemple svp.

par exemple j'ai mes 3 zones de liste déroulantes dans le formulaire, soit "largeur", "longueur" et "hauteur".  Je choisis les valeurs de ces 3 zones déroulantes, par exemple 24 pour la largeur, 12 pour la longueur et 8 pour la hauteur.

ainsi, lorsque les 3 valeurs sont choisies, la fonction calcule prix a calculé la valeur affichée en bas.  Jusque là tout va bien.

Par la suite ca me prendrait un script qui va dans les champs cachés du formulaire et qui trouve la valeur qui a été calculée par la fonction calcule prix, parmi tous les champs cachés.  Dans ce cas-ci ca serait 2296.

le script doit aller chercher le champ caché nommé 2296 et prendre sa valeur et l'afficher n'importe ou dans le formulaire, dans un champ qui attend cette valeur. Dans mon cas, le champ nommé 2296 aurait la valeur 5000.

Serait-il possible de me faire un petit exemple que je pourrais ensuite travailler dessus et l'intégrer à mon formulaire SVP. 

Merci, cela me serait d'une aide précieuse.
En ayant un exemple complet, je pourrais comprendre tout le déroulement des opérations et ensuite avoir une base que je pourrais travailler à intégrer.

:)

samedi 17 novembre 2007 à 00:31:53 | Re : problème de formulaire de calcul en ligne

PetoleTeam

Membre Club
Bonjour,
le petit exemple sans more comment...
<html>
<head>
<script type="text/javascript">
//----------------------------

function Affiche_Result( ref_){
  var O_Dest = document.getElementById( 'I_RESULT');
  var O_Ref  = "I_" + parseInt( ref_);
  var Obj = document.getElementById( O_Ref);
  var Valeur ="....................";
  if( Obj){
    Valeur = Obj.value;
  }
  O_Dest.value = Valeur;
}
//---------------------

function calcule_prix(){
  var O_Select;
  O_Select = document.getElementById("S_LARGEUR");
  var iLarg = parseFloat(O_Select.options[O_Select.selectedIndex].value);
  O_Select = document.getElementById("S_LONGUEUR");
  var iLong = parseFloat(O_Select.options[O_Select.selectedIndex].value);
  O_Select = document.getElementById("S_HAUTEUER");
  var iHaut = parseFloat(O_Select.options[O_Select.selectedIndex].value);
  var iPrix =((iLarg) * (iLong) * (iHaut))-(iHaut);
  document.getElementById("I_PRIX").value = iPrix.toFixed(2);
  Affiche_Result( iPrix);
}
</script>
</head>
<body>
<!-- -->
<input id="I_2296" name="I_2996" type="hidden" value="Bonjour 2996">
<input id="I_2870" name="I_2870" type="hidden" value="Bonjour 2870">
<input id="I_3444" name="I_3444" type="hidden" value="Bonjour 3444">

<select id ="S_LARGEUR"  name="S_LARGEUR" onchange ="calcule_prix();">
<option value="0" selected>Imp. / Mét.</option>
<option value="24">24' ---- 07,32m</option>
<option value="30">30' ---- 09,14m</option>
<option value="36">36' ---- 10,97m</option>
</select>
<br>
<select id ="S_LONGUEUR" name="S_LONGUEUR" onchange="calcule_prix();">
<option value="0" selected>Imp. / Mét.</option>
<option value="12">12' ----03,66m</option>
<option value="24">24' ----07,32m</option>
<option value="36">36' ----10,97m</option>
</select>
<br>
<select id ="S_HAUTEUER" name="S_HAUTEUER" onchange="calcule_prix();">
<option value="0" selected>Imp. / Mét.</option>
<option value="8">08' ----2,44m</option>
<option value="10">10' ----3,05m</option>
<option value="12">12' ----3,66m</option>
</select>
<br>Prix : <input id="I_PRIX"   name="I_PRIX"   value="0,00" >
<br>Resultat: <input id="I_RESULT" name="I_RESULT" value="">
</body>
</html>


à toi de jouer...
;0)
samedi 17 novembre 2007 à 07:01:41 | Re : problème de formulaire de calcul en ligne

adtconsult

merci l'ami :)
j'apprécie ton aide le bon samaritain.
avec ton exemple, je vais faire des tests avec mon formlaire et voir tout le fonctionnement, pour comprendre tout ca.

Salutations !
je te reviens avec ca l'expert, mais tu as fait pas mal.  Je ne voulais pas juste avoir le code, je voulais le comprendre aussi.  Avec ca, je suis sur bonne piste pour expérimenter le comportement de mon formulaire.

-fred


Cette discussion est classée dans : valeur, document, prix, value, getelementbyid


Répondre à ce message

Sujets en rapport avec ce message

je comprend pas ?! [ par stequer ] voilas je suis nul en javascript pourier vous m'aider voila mon erreurError: document.getElementById("civilite") has no propertiesSource File: http:// controle de mouvement d'un calque avec bouton [ par kartoon ] Bonjour,Je souhaiterai connaître l'astuce pour pouvoir controler le déplacement d'un calque :J'ai un bouton "deplacer" qui fonctionne en entrant une d erreur valeur null [ par khalil78 ] salut j'ai ecrit un script en javascript : function addElement(){     var f=0;     a = document.selectContent.id.value;     b = document.selectContent Calcul [ par dity ] DiTy AkA B@d Boµ Bonjour, je suis bloqué devant un travail... Je doit faire un calculateur en javascript, une page html & un fichier js pour exécute sauce light pour fichier js [ par tonytruand ] Bonjour, Un tuyau SVP, à partir d'un formulaire, et en fonction des choix exprimés, je rapatrie des informations diverses grâce au : if (document.getE Ptite question sur une function js [ par destiny ] Bonjour tlm :)Voila j'ai fais une ptite function js qui me modifie la VALUE de mon input suivant la valuer d'un checkbox!function MajTexteValider() {  URGENT !! validation formulaire avec php [ par romainst ] Bonjour j'ai un énorme problème que je dois résoudre rapidement c'est pour ça que j'en appelle à votre aide,J'ai créé récemment ce formulaire de vote Firefox et le javascript [ par destiny ] Lo all,Voila ma function qui va modifier la date de 'Fin sejour' suivant le nbr de semaine souhaiter par rapport à la date du debut du sejour 'Debut s extraire plusieurs mots [ par tonytruand ] Bonsoir,J'ai trové de nombreux moteurs de recherches intra page, moi ce que j'aimerais faire c'est pouvoir extraire dans une page plusieurd mot pré dé mon pb n'a pas de valeur [ par nahzhir ] Bonjour Sur mon site en asp, j'ai une erreur dont je ne trouve pas la reponse : document.getElementbyId(...) a une valeur null ce qui ce réfere à l


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales