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 :

Remplir input automatiquement avec calcul


Sujet :

JavaScript

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut Remplir input automatiquement avec calcul
    Bonjour,

    J'ai un formulaire avec différents input et je souhaite en remplir un automatiquement.
    Je voudrais quand j'ai saisie un montantHT et un taux de TVA que cela affiche le montantTVA
    La formulaire serait:
    montantHT * tauxTVA / 100
    Comment faire cela en javascript?
    J'ai pensais à l'événement on blur mais après je suis un peut perdu

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    T'es un peu perdu pour quoi au juste ?
    Pour récupérer les valeurs ou pour écrire une formule de calcul en JavaScript ?
    J'ai du mal à voir ce qu'il y a de compliqué...

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai fait ceci mais sa m'affiche rien:
    Fonction:
    Javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            function calcul(montantHT, tauxTVA)
    {
        result = montantHT*tauxTVA /100;
        document.getElementById('montantTVA').value = result;
    }
    Action qui se passe quand j'ai sélectionné mon taux de tva dans la liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onblur="javascript:calcul(this.value, document.getElementById('montantHT').value);"
    De plus, ma liste de taux de TVA est alimenté par une requête sql

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    ma liste de taux de TVA est alimenté par une requête sql
    Ce qui signifie, j'imagine, que la balise associée au onblur que tu montres (ben oui, faudrait quand même pas donner les informations susceptibles de t'aider...) est un select ?
    Si c'est le cas, ce n'est pas onblur qu'il faut utiliser mais onchange...

  5. #5
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    Oui c'est un select
    Mais là pour la liste, sa me récupère la valeur, c'est à dire les id qui sont dans la table, pas le libelle?

  6. #6
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    Pour récupérer le texte de la liste j'ai essayé ceci:
    Javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var liste = document.getElementById("tauxTva");
        var index = liste.options.selectedIndex; // index de l'option sélectionnée
     
        var valeur = liste.options[index].value // la valeur de l'option
        var tva = liste.options[index].text; // le texte de l'option
    Mais sa me dit sa:
    Uncaught TypeError: Cannot read property 'options' of null

  7. #7
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai réussi à récupérer le texte d'un select!
    Mon problème c'est pour récupérer ce que j'ai saisie dans mon input texte. Il me récupère null à chaque fois.

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Notre stocke de boules de cristal etant épuisé, et notre dernière boule de cristal ayant été ecrasé par un arbre déraciné lors de la dernière tempête, nous somme dans l’impossibilité de deviner ton code ...
    Citation Envoyé par Bovino
    (ben oui, faudrait quand même pas donner les informations susceptibles de t'aider...)

  9. #9
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai mis ceci dans ma fonction et sa me renvoie vide:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var ht = $('#montantHT').val();

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Hé be on avance ... mais pas beaucoup ...

    déja on s'aperçoit que tu utilises jquery, ce que tu n'avais pas précisé

    Malheureusement on n'a toujours pas accès au html ...

  11. #11
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai essayé aussi en js comme tu peux le voir plus haut mais sa fonctionne pas non plus:
    champ input que je souhaite récupérer la valeur saisie:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <div class="col-md-9"> 
        <input class="form-control required" type="text" name="montantHT" id="montantHT" value="" role="input" aria-required="true" />
    </div>

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    ha ben maintenant que l'on a le html ...
    il faudrait que l'on sache QUAND tu fais appel à ton js ?

  13. #13
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    La fonctionJS:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function calcul(){
        var tva = $('#tauxTVA option:selected').text();
        var ht = $('#montantHT').val();
       var result = ht*tva;
       console.log(ht);
       console.log(tva);
         console.log(result);
        document.getElementById('montantTVA').value = result;
    }
    Je l'appel ici:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <select style="width:250px" class="select2 required taux" id="tauxTVA" name="tauxTVA" aria-required="true" onchange="calcul();">

    Pour remplier le champ montantTVA

  14. #14
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Pour remplier le champ montantTVA
    que l'on ne voit pas dans ton html ...

  15. #15
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Apparemment, tu sembles t'acharner à ne pas vouloir nous montrer l'ensemble du code susceptible de t'aider !

    Si tu nous montrais l'ensemble de ton formulaire, ça ne te paraitrait pas utile ?

  16. #16
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
                                        <input class="form-control required" type="text" name="montantTVA" id="montantTVA" value="" role="input" aria-required="true" />

  17. #17
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai trouvé: J'avais des problèmes de div!!!
    Merci en tout cas de votre aide

  18. #18
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    et donc ça c'est l'ensemble du formulaire ...


    bref
    jette un oeil là dessus ça ira plus vite :
    http://jsfiddle.net/8Tf6x/

    Sinon on a le temps d'attendre les prochains jeux olympiques

  19. #19
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai mis cet événement sur mon champs montantHT mais je suis obliger de cliquer ailleurs pour que cela me mette a jours un autre champs.
    Je voudrais quand je saisi dans ce champ, que cela mette automatiquement l'autre à jour sans devoir cliquer ailleurs.
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input class="form-control required" type="text" name="montantHT" id="montantHT" value="" role="input" aria-required="true" onblur="calcul();" />

  20. #20
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    je suis obliger de cliquer ailleurs pour que cela me mette a jours
    Ben... oui, c'est un peu la définition de onblur...

    Regarde du côté de oninput.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. remplir un textarea avec input text
    Par nicerico dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/10/2008, 17h16
  2. remplir des champs texte automatiquement avec base
    Par rvm31 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/11/2007, 09h55
  3. calcul automatique avec select
    Par maysa dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 07/06/2007, 16h22
  4. [MySQL] Formulaire de réservation avec calcul automatique
    Par mluce dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 06/03/2007, 13h46
  5. Réponses: 2
    Dernier message: 04/02/2007, 19h48

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