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 :

[Débutant] evènement onChange sur input text


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut [Débutant] evènement onChange sur input text
    Bonjour,
    j'ai créé une page de test toute simple, mais le script ne fonctionne pas et je n'arrive pas à savoir pourquoi :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans nom</title>
    <script type="text/javascript">
    		  function calcul_montant(){
    			  var qte=window.document.getElementById("quantite").value
    			  var prix_unit=50
    			  if (isNaN(qte)) {qte=0}
    			  var montant=qte*prix_unit
    			  window.document.getElementById("montant").value=montant
    		  }
    </script>
    </head>
     
    <body>
    <form name="commande">
    <input name="quantite" type="text" title="quantite" value="" size="10" maxlength="2" onChange="calcul_montant()" />
    <input type="text" disabled="disabled" id="prix_unit" maxlength="6" name="prix_unit" size="10" value="" />
    <input type="text" disabled="disabled" id="montant" name="montant" maxlength="6" size="10" value="" />
    </form>
    </body>
    </html>
    Le champ montant est censé se mettre à jour lorsque l'on change la quantité, mais ça ne marche pas... Pourquoi ?

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    il manque un id à "quantité" (puisque tu y fais référence)
    +
    les .value étant en caractère, tu dois utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    parseInt(document.getElementById("quantite").value, 10)
    Le "window" devant "document" est inutile ...

    A+

  3. #3
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    onchange n'est pas bien implémenté selon les versions de javascript
    passe plutot par le onblur() qui se declenche quand l'input perd le focus et que son contenu aura changé
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    onchange n'est pas bien implémenté selon les versions de javascript
    Ah bon ?
    Tu peux développer ?

    (ce point là, car dans l'absolu je n'en doute pas )

    A+

  5. #5
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    Ha non au temps pour moi
    je me suis trompé de ligne ... c'est ondlbclick ...

    ça devrait passer aussi avec onchange
    mais il ne se déclenche que si le contenu est modifié ET que l'objet perds le focus !
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Ah OK.
    Citation Envoyé par SpaceFrog Voir le message
    mais il ne se déclenche que si le contenu est modifié ET que l'objet perds le focus !
    Exact, sinon, il y a onkeyup ...

    A+

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Super ! Ca marche impec. J'ai finalement opté pour onkeyup pour que la mise à jour soit immédiate.
    Merci.

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

Discussions similaires

  1. Evénement onchange sur champ input de type number
    Par Florian_mbf dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 21/05/2013, 09h24
  2. [AJAX] [PHP-JS] Evénement ONBLUR sur champ texte
    Par Sytchev3 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/09/2007, 15h31
  3. evenement sur input text
    Par lesafir dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 14/08/2007, 12h01
  4. Evènement Javascript sur un texte
    Par hat_et_m dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/12/2006, 13h36
  5. Dégradé progressif sur input text
    Par avogadro dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 24/08/2006, 17h04

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