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 :

Appel de fonction avec parametre dans un setTimeOut


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 30
    Points : 19
    Points
    19
    Par défaut Appel de fonction avec parametre dans un setTimeOut
    Bonjour à tous,

    voici le code qui me tourmente depuis quelques heures, son objectif est de
    1/ colorier un élement text (input html) en gris,
    2/ appeler une url via un get et récupérer une réponse,
    3/ selon la réponse OK/KO colorier l'élement text en vert ou en rouge,
    4/ attendre 1s puis colorier l'element text en blanc.

    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
    function update_text(objectName)
    {
        document.getElementById(objectName).style.color="white";
        document.getElementById(objectName).style.backgroundColor="grey";
     
        $.get("proxy.php",{},
            function(data)
            { 
                ret = data; 
                if(data=="OK") {
                   document.getElementById(objectName).style.backgroundColor="green"; 
                }
                else {
                    document.getElementById(objectName).style.backgroundColor="red"; 
                }
                var t = setTimeout("update_text_clean()",1000);
             });
    }
     
    function update_text_clean()
    {
        alert("bip");
    }
    jusque là, tout se passe bien, le bip apparait.

    Seulement pour colorier l'élement text, j'ai besoin de connaitre son nom, donc de le passer en parametre à update_text_clean.

    j'ai donc modifié mon code comme suit:

    ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var t = setTimeout("update_text_clean("+objectName+")",1000);
    ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function update_text_clean(objectName)
    {
        alert("bip"+objectName);
    }
    sans succès.

    Je suis prenneur de toute conseil, avis... pour résoudre cela,

    d'avance merci,

    cdt,

    jfv

  2. #2
    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 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    setTimeout et setInterval acceptent en principe un autre paramètre qui devrait être les arguments à passer à la fonction, mais cela reste de la théorie

    en pratique il faut passer par une closure

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var t = setTimeout(function(){update_text_clean(objectName)},1000);

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Merci beaucoup, une réponse en moins de 4mn et qui fonctionne en plus

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

Discussions similaires

  1. Appel de fonction avec parametre dans fonction
    Par VooDooNet dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 03/05/2010, 18h40
  2. [debutant] Appel de fonction avec parametre undefined
    Par Jean_pierre dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/03/2009, 21h38
  3. Réponses: 1
    Dernier message: 15/09/2008, 14h38
  4. Creation et appel de fonction avec parametre
    Par gregounnet dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 25/07/2007, 11h59
  5. Appeler Requete avec parametre dans Procedure
    Par shadockgreg dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 08/09/2006, 12h25

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