begin process at 2010 03 18 13:37:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Divers

 > 

Formulaire avec liste de valeurs permettant le calcul du total


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

Formulaire avec liste de valeurs permettant le calcul du total

mardi 19 mai 2009 à 18:10:05 | Formulaire avec liste de valeurs permettant le calcul du total

Rabbit83

Bonjour, je me permets de vous soumettre mon problème, étatnt un débutant en javascript. Je souhaite construire un formulaire dans lequel l'utilisateur sélectionne une valeur dans une liste. Suivant ll'item sélectionné, la valeur diffère et est ajoutée au total. J'ai trouvé un script qui marche bien sur internet, mais il ne fonctionne qu'avec des boîtes à cocher ou des boutons radio. J'ai essayé de le modifier avec le tag select , mais je n'y arrive pas. Je soupçonne bien que j'ai du faire une erreur de syntaxe, mais un peu d'aide pour le novice que je suis serait très appréciée. Je vous joins le code ci-dessous ( j'ai laissé les noms de valeurs d'origine pour les boutons radio). Merci d'avance de vos réponses.
Votre montage


Supplément :
1 séquence
2 séquences
3 séquences
4 séquences
5 séquences
6 séquences
7 séquences

Your total is:
mardi 19 mai 2009 à 18:17:54 | Re : Formulaire avec liste de valeurs permettant le calcul du total

Rabbit83

... heu, je commence mal ! Pouvez-vous me dire comment faire pour que le code s'affiche sous forme de code et non de résultat ? Javascript:Insert_Emoticon('/imgs2/smile_blush.gif');
mardi 19 mai 2009 à 20:07:12 | Re : Formulaire avec liste de valeurs permettant le calcul du total
mardi 19 mai 2009 à 20:12:21 | Re : Formulaire avec liste de valeurs permettant le calcul du total

PetoleTeam

Membre Club
Bonjour,
tiens le message a disparu ???????
Je disais donc d'utiliser la TexteBox classic en cliquant sur le lien en dessous de la zone d'édition
;O)
mardi 19 mai 2009 à 20:26:54 | Re : Formulaire avec liste de valeurs permettant le calcul du total

Rabbit83

J'espère que le code va passer cette fois...

//<script type="text/javascript">
/*
Kevin Hartig :: http://www.grafikfx.net/
*/

// Calculate the total for items in the form which are selected.
function calculateTotal(inputItem) {
  with (inputItem.form) {
    // Process each of the different input types in the form.
    if (inputItem.type == "radio") {   // Process radio buttons.
      // Subtract the previously selected radio button value from the total.
      calculatedTotal.value = eval(calculatedTotal.value) - eval(previouslySelectedRadioButton.value);
      // Save the current radio selection value.
      previouslySelectedRadioButton.value = eval(inputItem.value);
      // Add the current radio button selection value to the total.
      calculatedTotal.value = eval(calculatedTotal.value) + eval(inputItem.value);
    } else {   // Process check boxes.
      if (inputItem.checked == false) {   // Item was uncheck. Subtract item value from total.
          calculatedTotal.value = eval(calculatedTotal.value) - eval(inputItem.value);
      } else {   // Item was checked. Add the item value to the total.
          calculatedTotal.value = eval(calculatedTotal.value) + eval(inputItem.value);
      }
    }

    // Total value should never be less than 0.
    if (calculatedTotal.value < 0) {
      InitForm();
    }

    // Return total value.
    return(formatCurrency(calculatedTotal.value));
  }
}

// Format a value as currency.
function formatCurrency(num) {
  num = num.toString().replace(/\$|\,/g,'');
  if(isNaN(num))
     num = "0";
  sign = (num == (num = Math.abs(num)));
  num = Math.floor(num*100+0.50000000001);
  cents = num%100;
  num = Math.floor(num/100).toString();
  if(cents<10)
      cents = "0" + cents;
  for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
      num = num.substring(0,num.length-(4*i+3)) + ',' + num.substring(num.length-(4*i+3));
  return (((sign)?'':'-') + '¤' + num + '.' + cents);
}

// This function initialzes all the form elements to default values.
function InitForm() {
  // Reset values on form.
  document.selectionForm.total.value='¤0';
  document.selectionForm.calculatedTotal.value=0;
  document.selectionForm.previouslySelectedRadioButton.value=0;

  // Set all checkboxes and radio buttons on form to unchecked.
  for (i=0; i < document.selectionForm.elements.length; i++) {
    if (document.selectionForm.elements[i].type == 'checkbox' | document.selectionForm.elements[i].type == 'radio') {
      document.selectionForm.elements[i].checked = false;
    }
  }
}
</script>


<body onload="InitForm();" onreset="InitForm();">

<table><tr><td>
  <form method="POST" name="selectionForm">
    <b>Votre montage</b><br>
  
    <SELECT name="fonction">
<Option VALUE="10">une séquence</OPTION>
<Option VALUE="20">2 séquences</OPTION>
< Option VALUE="30">3 séquences</OPTION>
<Option VALUE="40"> 4 séquences</OPTION>
<Option VALUE="50">5 séquences</OPTION>
onclick="this.form.total.value=calculateTotal(this);
</SELECT>
      <br><br>
    <b>Supplément :</b> <br>
      <input type="radio" name="Sauce" value="50.00" onclick="this.form.total.value=calculateTotal(this);"> 1 séquence
    <br>
      <input name="Sauce" type="radio"  value="100.00" onclick="this.form.total.value=calculateTotal(this);"> 2 séquences
    <br>
      <input type="radio" name="Sauce" value="150.00" onclick="this.form.total.value=calculateTotal(this);"> 3 séquences
    <br>
      <input type="radio" name="Sauce" value="200.00" onclick="this.form.total.value=calculateTotal(this);"> 4 séquences
<br>
      <input type="radio" name="Sauce" value="250.00" onclick="this.form.total.value=calculateTotal(this);"> 5 séquences
<br>
      <input type="radio" name="Sauce" value="300.00" onclick="this.form.total.value=calculateTotal(this);"> 6 séquences
<br>
      <input type="radio" name="Sauce" value="350.00" onclick="this.form.total.value=calculateTotal(this);"> 7 séquences
    <br>
    <br>
    <input type="hidden" name="calculatedTotal" value="0">
    <input type="hidden" name="previouslySelectedRadioButton" value="0">
    <strong>Your total is:</strong>
    <input type="text" name="total" readonly onfocus="this.blur();">
  </form>
</td></tr></table>//
mardi 19 mai 2009 à 22:45:58 | Re : Formulaire avec liste de valeurs permettant le calcul du total

PetoleTeam

Membre Club
Bonjour,
Je soupçonne bien que j'ai du faire une erreur de syntaxe
il semblerait effectivement
<form method="POST" name="selectionForm">
  <b>Votre montage</b><br>
  <select name="fonction" onclick="this.form.total.value=calculateTotal(this);">
  <option value="10">une séquence</option>
  <option value="20">2 séquences</option>
  <option value="30">3 séquences</option>
  <option value="40">4 séquences</option>
  <option value="50">5 séquences</option>
  </select>
//et la suite

l'événement doit être dans la balise SELECT et non à l'extérieur

Sans préjuger du reste...
;O)
vendredi 22 mai 2009 à 09:53:12 | Re : Formulaire avec liste de valeurs permettant le calcul du total

Rabbit83

Ca marche parfaitement ! Mille mercis Je savais que j'avais encore BEAUCOUP à apprendre ! Pouvez-vous me conseiller un bon bouquin pour démarrer ? Merci d'avance


Cette discussion est classée dans : formulaire, liste, valeurs, total, séquences


Répondre à ce message

Sujets en rapport avec ce message

Formulaire qui calcul [ par twinsen60 ] BonjourJ'aimerai faire une sorte de formulaire, avec des champs a remplir par le biais de "liste déroulante".Suivant mon choix de ma liste, j'ai plusi Afficher valeur de plusieurs liste deroulante [ par danvy ] Bonjour a tous,voila je cherche à afficher, dans un calque de ma page html, les valeurs de mes listes deroulante. J'ai 2 listes deroulantes et je voud Checkbox et formulaire dynamique [ par petitelarve ] bonjour, Je cherche un moyen d'afficher des liste et  des textearea suite au check sur une checkbox.Par exemble , si on click sur la checkbox Auteur, Fonction Javascript [ par yacouba85 ] Bonjour je voulais savoir s'il était possible d'insérer du code PHP dans une fonction javascript? comme ceci: function sauvegarder(formulaire, liste) Recuperer des valeurs d'un formulaire pour creer une requete mysql [ par Ze_lola ] Bonjour a tous! Alors voila j'ai un petit problème concernant ajax:il faut que je recupere des valeurs d'un formulaire et que je les réincjecte dans u ferification d'un formulaire [ par nacer_1954 ] Bonjour; j'ai fait un petit formulaire ou il ya des bouton radio et un champ a remplir  et aussi une liste deroulante. je veut faire a ce que si l script de verification formulaire [ par nacer_1954 ] SVP  j'ai un formulaire ou il ya des boutons radios et un champ de sais verification formulaire [ par nacer_1954 ] SVP  j'ai un formulaire ou il ya des boutons radios et un champ de saisie et une liste deroulante. j'ai des affaire qui sont dans une base de don ça ma caC la têt!!!(formulaire html sous netscape) [ par rajolalaina ] bonjour,je voudrais savoir pouquoi mon script ne fonctionne pas sous netscape ou firefox. Le voici :functioncalculerTotal () { var total=eval(0);tot Formulaire interactif [ par Ankaa1988 ] Bonjour a tous,je voudrais creer un formulaire "interactif"en fait, il se composerait d'une liste déroulante (ex: 1 puis 2 etc)et d'un champs de texte


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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,593 sec (3)

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