IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

calculs automatiques dans un formulaire dynamique


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut calculs automatiques dans un formulaire dynamique
    Bonjour à tous,

    J'ai crée un formulaire dynamique php à partir d'une table sql.
    Chaque champ comporte un bouton radio correspondant à un prix.
    Avant le bouton valider, j'ai un champ "total" que je voudrais alimenter en fonction des choix. Mais je ne sais pas comment créer la fonction javascript.
    extrait du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    //affichage boutons radio
    $sql = mysql_query("SELECT id, code, nom, classe, prix FROM parametres order by id limit 0,4");
     
    while($row = mysql_fetch_array($sql))
    {
    echo "<input type='radio' name='prix[]' value='".$row["prix"]."' onClick = 'calcul_form()'>";
    }
    //affichage des checkbox
    $sql2 = mysql_query("SELECT id, code, nom, classe, prix FROM parametres order by id limit 4,11");
    while($row = mysql_fetch_array($sql2))
    {
    echo "<input type='checkbox' name='prix[]' value='".$row["prix"]."' onClick = 'calcul_form()'>";
    }
    ?>
    <input type="text" size = "5" name="total" value="" readonly="">
    et je voudrais que la fonction calcule_form() alimente le champ "total"...J'ai tout essayé sans succès. La value de code[] n'est pas comprise...Je précise qu'elle est soit un entier soit un décimal.
    Pouvez-vous m'aider ?
    Merci d'avance !

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 93
    Par défaut
    est ce que tu pourrais envoyer ton code js, j'ai fais quasiment la meme chose le mois dernier. Sinon moi j'ai pas mis onclcik, mis onchange.

  3. #3
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    merci de te pencher sur mon cas
    voici la fonction JS (elle est devenue pourrie à force de faire des modifs). Mais comme je connais le nombre de champ de mon form dynamique, j'ai mis une boucle for. Ceci dit, c'est pas vraiment le but d'un form dynamique...alors si je pouvais m'en passer...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     
    function calcul_form() 
    {
    with (document.forms.form1) 
        {
     
    for(i=1;i<12;i++)
    {
    total.value = code.value *1 + code(i).value *1 ;
    }
    // Ai mis les *1 ci-dessus afin que les + fassent une somme arithmétique
    // et non pas une concaténation de chaînes de caractères
          }
    }

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 93
    Par défaut
    ok mais avant j'aimerais juste comprendre une petite chose :

    pourquoi est ce que tu as des boutons radio et des checkbox ?

    si tu pouvais m'expliquer ta méthode de calcul en fait...

    c'est juste une addition des valeurs ou autre ?

  5. #5
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Oui, en fait je me suis mal expliqué, et j'ai fait pas mal de modifs ensuite...
    Il y a des radio et des checkbox car les 4 premiers champs (radio) n'offrent qu'un choix possible alors que les 7 autres (checkbox) peuvent tous être sélectionnés. Mais mon erreur était de vouloir ajouter des champs value qui contenaient les données que mon form doit traiter. J'ai donc ajouté un champ prix, qui lui, doit être ajouté pour former une somme qui alimentera le champ total. je remets la première partie du form (radios)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    <input type='radio' name='code[]' value='".$row["code"]."' onChange = 'calcul_form()'>
    <input type='text' name='prix[]' size='3' value='".$row["prix"]."' readonly=''>
    J'avoue ne plus savoir trop quoi faire...peut être getElementByid ? Puisque le but est que si le user coche un des radios "code", son prix se totalise...
    J'espère avoir été plus clair...

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 93
    Par défaut
    donc si je comprends bien tu as en tout 11 prix (7 + 4) mais parmi les 4 premiers tu peux n'en selectionner qu'un seul et ensuite tu peux selectionner les 7 autres c'est bien ca ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul automatique dans un tableau dynamique
    Par samiker dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/12/2014, 00h17
  2. Réponses: 11
    Dernier message: 08/11/2013, 20h26
  3. Réponses: 0
    Dernier message: 08/06/2011, 15h09
  4. Réponses: 2
    Dernier message: 06/12/2010, 16h23
  5. [Formulaire]Calcul automatique dans un formulaire
    Par yassin101 dans le forum IHM
    Réponses: 1
    Dernier message: 23/03/2007, 18h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo